Java超|リテラルとは

リテラルは、Javaコードに直接置かれた値の札。文字、文字列、数値の書き方を見分けると、コードの意味がぐっと読みやすくなる。

Javaで画面に文字を表示するプログラムに慣れてくると、次に気になってくるのが、かっこの中に書かれている値そのものです。

たとえば、次のような値です。

System.out.println('春');
System.out.println("Javaの学習を始めます。");
System.out.println(2025);

どれも画面に表示する内容ですが、Javaの中ではすべて同じ扱いではありません。

'春' は1つの文字を表します。
"Javaの学習を始めます。" は文字の並びを表します。
2025 は数値を表します。

このように、プログラムの中に直接書かれた値のことを リテラル と呼びます。リテラルは、Javaコードの中で 値そのもの を表す大切な部品です。見た目の違いは小さくても、Javaにとっては意味が大きく変わるため、早い段階で区別できるようになることが大切です。

ドラゴンボール風にたとえるなら、リテラルは 技の巻物に直接書かれた力の札 のようなものです。

Javaのリテラルドラゴンボール風のたとえ
'春'1文字だけを示す小さな札
"Javaの学習を始めます。"文章をまとめた巻物の一節
2025数値の力をそのまま示す札
'7'数字の形をした文字の札
"123"数字に見えるが、文字列として扱う札
123計算にも使える数値の札

リテラルを理解すると、Javaコードを読むときに「これは文字なのか」「これは文章なのか」「これは数値なのか」を見分けられるようになります。

この見分けができると、これから変数、計算、条件分岐などを学ぶときにも、コードの意味を落ち着いて読み取れるようになります。

まずはSample3.javaを見てみよう

リテラルの基本を理解するために、次のサンプルプログラムを使います。

ファイル名:Sample3.java

// 文字、文字列、数値を表示するプログラム
class Sample3
{
    public static void main(String[] args)
    {
        System.out.println('桜');
        System.out.println("Java修行を続けます。");
        System.out.println(2026);
    }
}

このプログラムを実行すると、画面には次のように表示されます。

桜
Java修行を続けます。
2026

このコードの中には、3つの値が直接書かれています。

  • '桜'
  • "Java修行を続けます。"
  • 2026

これらが、今回のテーマであるリテラルです。

コードに書かれた値表しているもの種類
'桜'1つの文字文字リテラル
"Java修行を続けます。"文字の並び文字列リテラル
2026整数の数値数値リテラル

ドラゴンボール風に言えば、Sample3.javaには3種類の札が入っています。

1つ目は、桜という1文字を示す札。
2つ目は、Java修行を続けます。という文章の札。
3つ目は、2026という数値の札です。

見た目はどれも画面に表示される内容ですが、Javaの中では種類が分かれています。

図:リテラルの3種類

この図が示していること

この図は、Javaのリテラルを、文字リテラル、文字列リテラル、数値リテラルの3種類に分けて表しています。

ここから分かるのは、Javaでは値の書き方によって意味が変わるということです。

'桜' は1つの文字、"Java修行を続けます。" は文字の並び、2026 は数値として扱われます。特に、囲み記号の違いによって、Javaが値をどう受け取るのかが変わる点が重要です。

リテラルとは何か

リテラルとは、プログラムの中に直接書かれた値のことです。

たとえば、Sample3.javaでは次の3つがリテラルです。

  • '桜'
  • "Java修行を続けます。"
  • 2026

これらは、変数のように名前を付けて保存されているわけではありません。コードの中に、そのまま値として書かれています。

リテラル意味
'桜'1つの文字そのもの
"Java修行を続けます。"文字列そのもの
2026数値そのもの

つまり、リテラルとは 値そのものを表す書き方 です。

ドラゴンボール風にたとえるなら、リテラルは巻物の中に直接置かれた 力の札 です。名前付きの箱にしまっているのではなく、その場に 桜、Java修行を続けます。、2026 と直接書かれている状態です。

Javaでは、この書き方によって値の種類を判断します。

書き方Javaの受け取り方
'桜'1つの文字
"桜"1文字だけの文字列
2026数値
"2026"数字の並びに見える文字列
'2'数字の形をした文字

大切なのは、中身だけでなく 囲み方まで含めて意味が決まる ということです。

Javaは意味のある部品でできている

Javaのコードは、ただ文字が横に並んでいるだけではありません。

人間の文章が単語や句読点の組み合わせでできているように、Javaのコードも意味を持つ小さな部品の組み合わせでできています。

この意味を持つ部品のことを トークン と呼びます。

Sample3.javaを見てみましょう。

// 文字、文字列、数値を表示するプログラム
class Sample3
{
    public static void main(String[] args)
    {
        System.out.println('桜');
        System.out.println("Java修行を続けます。");
        System.out.println(2026);
    }
}

この中には、いろいろなトークンがあります。

トークンの種類役割
リテラル'桜'、"Java修行を続けます。"、2026値そのものを表す
キーワードclass、public、static、voidJavaで特別な意味を持つ語
識別子Sample3、main名前を表す
区切り子;、( )、{ }文や構造を区切る
演算子+、-、*、/計算などに使う

この記事で特に注目するのは、リテラルです。

リテラルは、Javaの中で値を表すトークンです。コードの中に出てくる値を見たとき、「これはどんな種類の値なのか」を判断できるようになることが大切です。

ドラゴンボール風に言えば、Javaコードは巻物に書かれた型の集まりです。その中には、技の名前、区切りの印、構えの記号、そして力の札があります。リテラルは、その中でも 値そのもの を示す札です。

文字リテラルとは何か

Javaでは、1つの文字を表すときに 文字リテラル を使います。

文字リテラルは、シングルクォーテーションで囲んで書きます。

'桜'
'A'
'7'
'あ'

Sample3.javaでは、次の部分が文字リテラルです。

System.out.println('桜');

この '桜' は、1つの文字を表しています。

書き方意味
'A'英字1文字
'あ'日本語1文字
'7'数字の形をした1文字
'桜'漢字1文字

ここで大切なのは、文字リテラルは 1文字だけ を表すということです。

たとえば、次のような書き方は文字リテラルとしては扱えません。

'Java'

これは複数の文字が入っているため、1つの文字ではありません。複数の文字を表す場合は、文字列リテラルとしてダブルクォーテーションで囲みます。

"Java"

ドラゴンボール風にたとえるなら、文字リテラルは1枚の小さな札です。札1枚には、桜やAのような1つの印だけを書きます。たくさんの文字を並べたい場合は、1枚の札ではなく、文章として巻物に書くイメージです。

文字リテラルは画面ではシングルクォーテーションが表示されない

文字リテラルは、コードの中ではシングルクォーテーションで囲んで書きます。

System.out.println('桜');

しかし、実行結果の画面にはシングルクォーテーションは表示されません。

これは、シングルクォーテーションが「これは1つの文字ですよ」とJavaに伝えるための記号だからです。

コード上の書き方画面に表示されるもの
'桜'
'A'A
'7'7

シングルクォーテーションは、表示したい文字そのものではありません。Javaに値の種類を伝えるための印です。

ドラゴンボール風に言えば、札の外枠のようなものです。外枠は「これは1文字の札です」と示すためにあり、技を放ったときに見えるのは中身の文字だけです。

文字列リテラルとは何か

文字列リテラルは、文字の並びを表すリテラルです。

文字列は、ダブルクォーテーションで囲んで書きます。

"こんにちは"
"Java"
"123"
"学習中です"

Sample3.javaでは、次の部分が文字列リテラルです。

System.out.println("Java修行を続けます。");

この "Java修行を続けます。" は、複数の文字が並んだひとまとまりの文章です。

書き方意味
"こんにちは"文字の並び
"A"1文字だけだが文字列
"123"数字の並びだが文字列
"桜です"複数文字の文字列

ここで大切なのは、見た目だけで判断しないことです。

たとえば、"123" は数字のように見えます。しかし、ダブルクォーテーションで囲まれているため、Javaでは文字列として扱います。

書き方種類
123数値リテラル
"123"文字列リテラル
'1'文字リテラル

ドラゴンボール風にたとえるなら、文字列リテラルは巻物に書かれた一文です。1文字だけでも、ダブルクォーテーションで囲まれていれば、Javaは「文字列の巻物」として受け取ります。

文字リテラルと文字列リテラルの違い

Javaでは、1つの文字と文字の並びを区別して扱います。

特に混同しやすいのが、次の2つです。

'桜'
"桜"

人間の目には、どちらも桜という文字に見えます。しかし、Javaでは別の種類です。

書き方種類意味
'桜'文字リテラル1つの文字
"桜"文字列リテラル1文字だけの文字列
'A'文字リテラル1つの文字
"A"文字列リテラル1文字だけの文字列

この違いは、あとで変数やメソッドを学ぶときにも大切になります。

今の段階では、次のように押さえておくと分かりやすいです。

囲み方Javaでの扱い
' '1つの文字
" "文字列

つまり、1文字かどうかだけで決まるのではありません。どの記号で囲んでいるか が大切です。

図:文字リテラルと文字列リテラルの違い

この図が示していること

この図は、文字リテラルと文字列リテラルの違いを左右で比較しています。

'桜' と "桜" は、人間の目にはどちらも桜という文字に見えますが、Javaでは意味が違います。前者は1文字、後者は1文字だけの文字列です。

ここから分かるのは、Javaでは中身だけでなく、囲み方まで含めて値の種類を判断するということです。

数値リテラルとは何か

数値をそのまま書いたものは 数値リテラル です。

Sample3.javaでは、次の部分が数値リテラルです。

System.out.println(2026);

この 2026 は数値そのものです。シングルクォーテーションやダブルクォーテーションで囲まれていないため、文字でも文字列でもなく、数値として扱われます。

書き方種類
2026数値リテラル
100数値リテラル
0数値リテラル
"2026"文字列リテラル
'2'文字リテラル

今の段階では、まず 整数をそのまま書いたものは数値リテラルになる と考えると分かりやすいです。

ドラゴンボール風にたとえるなら、数値リテラルは力の値をそのまま示す札です。囲み記号が付いていないため、Javaは「これは文字ではなく数値だ」と受け取ります。

Sample3.javaの3つのリテラルを整理しよう

Sample3.javaの中で、リテラルが使われている3つの文をもう一度見てみましょう。

ファイル名:Sample3.java

// 文字、文字列、数値を表示するプログラム
class Sample3
{
    public static void main(String[] args)
    {
        System.out.println('桜');
        System.out.println("Java修行を続けます。");
        System.out.println(2026);
    }
}

それぞれの行で使われているリテラルを整理すると、次のようになります。

使われているリテラル種類
System.out.println('桜');'桜'文字リテラル
System.out.println("Java修行を続けます。");"Java修行を続けます。"文字列リテラル
System.out.println(2026);2026数値リテラル

この3つを見比べると、Javaが文字、文字列、数値をきちんと区別していることが分かります。

画面に表示されるときは、どれも文字のように見えるかもしれません。しかし、コードの中では種類が違います。

コード上の値画面表示Javaでの種類
'桜'文字
"Java修行を続けます。"Java修行を続けます。文字列
20262026数値

この区別が、Javaのリテラルを理解するうえでとても大切です。

よくある見間違いに注意しよう

リテラルの学習では、見た目が似ているために混同しやすいものがあります。

見間違いやすい例実際の意味
'A' と "A"前者は文字、後者は文字列
'2' と 2前者は文字、後者は数値
"123" と 123前者は文字列、後者は数値
'桜' と "桜"前者は文字、後者は文字列

この違いは、最初は小さく見えるかもしれません。しかし、Javaではとても大切な区別です。

たとえば、次の3つは見た目が似ています。

'2'
"2"
2

しかし、Javaでの意味は違います。

書き方種類イメージ
'2'文字リテラル数字の形をした1文字
"2"文字列リテラル1文字だけの文字列
2数値リテラル計算に使える数値

ドラゴンボール風にたとえるなら、同じ2という形でも、文字の札、文章の巻物、数値の札では役割が違います。

Javaコードを読むときは、中身だけでなく、どんな記号で囲まれているかまで確認しましょう。

リテラルは画面表示だけでなく今後の土台になる

今は、リテラルを System.out.println で画面に表示しているだけです。

しかし、リテラルの考え方は、これから先のJava学習でも何度も出てきます。

たとえば、変数に値を入れるときにもリテラルを使います。

int year = 2026;

この 2026 は数値リテラルです。

文字列を変数に入れるときにも使います。

String message = "Java修行を続けます。";

この "Java修行を続けます。" は文字列リテラルです。

文字を変数に入れるときにも使います。

char mark = '桜';

この '桜' は文字リテラルです。

使う場面リテラルの例種類
画面に表示するSystem.out.println(2026);数値リテラル
変数に数値を入れるint year = 2026;数値リテラル
変数に文字列を入れるString message = "Java修行を続けます。";文字列リテラル
変数に文字を入れるchar mark = '桜';文字リテラル

リテラルを理解しておくと、これから変数を学ぶときにも、値の種類を整理しやすくなります。

図:似ているリテラルの違い

この図が示していること

この図は、見た目が似ているリテラルの違いを比較しています。

ここから分かるのは、Javaでは中身だけでなく、囲み方まで含めて値の種類を判断するということです。

'桜' と "桜" は、どちらも桜という文字に見えますが、前者は文字リテラル、後者は文字列リテラルです。また、"123" と 123 は見た目が似ていますが、前者は文字列、後者は数値です。

リテラルを見分ける練習

リテラルを見分けるときは、次の順番で確認すると分かりやすくなります。

確認すること判断のしかた
シングルクォーテーションで囲まれているか1文字なら文字リテラル
ダブルクォーテーションで囲まれているか文字列リテラル
囲み記号がなく数字だけか数値リテラル
数字に見えても囲まれているか文字または文字列として扱う

いくつか例を見てみましょう。

種類理由
'炎'文字リテラル1文字が ' ' で囲まれている
"炎"文字列リテラル" " で囲まれている
10数値リテラル囲み記号なしの整数
"10"文字列リテラル数字に見えるが " " で囲まれている
'1'文字リテラル数字の形をした1文字

ドラゴンボール風にたとえるなら、値を見るときは「札の中身」だけでなく、「どんな枠で囲まれているか」を確認する修行です。

同じ形に見えても、枠が違えば役割が変わります。

Sample3.javaはリテラルの最初の学習に向いている

Sample3.javaは短いプログラムですが、リテラルの基本を学ぶにはとても分かりやすい形です。

ファイル名:Sample3.java

// 文字、文字列、数値を表示するプログラム
class Sample3
{
    public static void main(String[] args)
    {
        System.out.println('桜');
        System.out.println("Java修行を続けます。");
        System.out.println(2026);
    }
}

この1つのプログラムの中に、次の3種類のリテラルが入っています。

種類Sample3.javaの例
文字リテラル'桜'
文字列リテラル"Java修行を続けます。"
数値リテラル2026

このコードを見ながら、どれが文字で、どれが文字列で、どれが数値なのかを確認すると、Javaの値の扱い方が少しずつ見えてきます。

見た目は小さな違いでも、Javaにとっては大切な区別です。

'桜' は文字。
"桜" は文字列。
2026 は数値。
"2026" は文字列。
'2' は文字。

この違いを丁寧に押さえておくことで、これから先のJava学習がぐっと進めやすくなります。

そして、リテラルを見分けられるようになると、コードを読んだときに「ここにはどんな値が置かれているのか」が自然に分かるようになります。Javaの文法を学ぶうえで、リテラルはとても基本的ですが、とても大事な土台です。