【初心者向けに解説】Javaの文字列の使い方

java文字列の基本
  • このエントリーをはてなブックマークに追加
  • Pocket

Javaに限らずだが、プログラムでは文字列を使う場面が多量にある。

このページではJavaでの文字列の扱い方をご紹介した。

Javaの文字列

Javaは画面に表示したり、メールに含まれたりする文字データを扱うことができる。これらの文字データを変数に保存するだけでなく、指定した文字をプログラムで扱うことができるよう文字と文字列という書き方が準備されている。

まず、その書き方を見てみよう。

リテラル

リテラルと言うのは、データの表記の仕方、つまり書き方のことである。Javaでは、ひとつの文字(character)と、いくつかの文字が集まった文字列(String)の書き方を分けている。

文字リテラルを使った文字の書き方の基本は簡単だ。一文字を「'」(シングルコーテーション)で囲む。

'一文字'

文字列リテラルを使った文字の書き方の基本も簡単だ。文字の並びを「"」(ダブルルコーテーション)で囲む。

"文字の並び"

文字コードによる書き方

Javaは、文字をUTF-16と呼ばれる文字コードによって扱っている。プログラマは文字そのものを書いたほうが分かりやすいが、文字コードで直接書くこともできる。

文字リテラルの書き方はこうだ。「\u」に続いてUTF-16の文字コードを書く。それを、「'」で囲む。

'\uUTF-16文字コード'

文字列リテラルの書き方はこうだ。「\u」に続いてUTF-16の文字コードを書く。これを文字数分繰り返す。それを、「"」で囲む。

"\uUTF-16文字コード \uUTF-16文字コード ・・・"

文字リテラルのサンプルプログラム

このサンプルプログラムは、ひとつの文字をコンソールに表示する。この時、文字リテラルを用いて変数に文字を代入する。

class PrintCharacter {
    public static void main(String[] args) {
        char literalACharacter = 'A';//[1]
        char literalAUtf16Code = '\u0041';//[2]
        char literalAACharacter = 'あ';//[3]
        char literalAAUtf16Code = '\u3042';//[4]
        System.out.println("[5] 半角英数字 = " + literalACharacter);
        System.out.println("[6] 半角英数字(文字コード) = " + literalAUtf16Code);
        System.out.println("[7] 全角文字 = " + literalAACharacter);
        System.out.println("[8] 全角文字(文字コード) = " + literalAAUtf16Code);
    }
}

実行結果

[5] 半角英数字 = A
[6] 半角英数字(文字コード) = A
[7] 全角文字 = あ
[8] 全角文字(文字コード) = あ

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] char型変数literalACharacterの宣言をし、「A」を代入する。
  • [2] char型変数literalAUtf16Codeの宣言をし、「\u0041」を代入する。
  • [3] char型変数literalAACharacterの宣言をし、「あ」を代入する。
  • [4] char型変数literalAAUtf16Codeの宣言をし、「\u3042」を代入する。
  • [5] literalACharacterを表示する。
  • [6] literalAUtf16Codeを表示する。
  • [7] literalAACharacterを表示する。
  • [8] literalAAUtf16Codeを表示する。

文字列リテラルのサンプルプログラム

このサンプルプログラムは、文字列をコンソールに表示する。この時、文字列リテラルを用いて変数に文字を代入する。

public class PrintString {
    public static void main(String[] args) {
        String literalABCString = "ABC";//[1]
        String literalABCUtf16Code = "\u0041\u0042\u0043";//[2]
        String literalAIUString = "あいう";//[3]
        String literalAIUUtf16Code = "\u3042\u3044\u3046";//[4]
        System.out.println("[5] 半角英数文字列 = " + literalABCString);
        System.out.println("[6] 半角英数文字列(文字コード) = " + literalABCUtf16Code);
        System.out.println("[7] 全角文字列 = " + literalAIUString);
        System.out.println("[8] 全角文字列(文字コード) = " + literalAIUUtf16Code);

        String concatenatedString = literalABCString + literalAIUString;//[9]
        System.out.println("[10] 文字列の結合 = " + concatenatedString);
    }
}

実行結果

[5] 半角英数文字列 = ABC
[6] 半角英数文字列(文字コード) = ABC
[7] 全角文字列 = あいう
[8] 全角文字列(文字コード) = あいう
[10] 文字列の結合 = ABCあいう

サンプルプログラムの説明

それでは簡単にプログラムの解説をしてゆこう。

  • [1] Stringクラスの参照変数literalABCStringの宣言をし、「ABC」を代入する。
  • [2] Stringクラスの参照変数literalABCUtf16Codeの宣言をし、「\u0041\u0042\u0043」を代入する。
  • [3] Stringクラスの参照変数literalAIUStringの宣言をし、「あいう」を代入する。
  • [4] Stringクラスの参照変数literalAIUUtf16Codeの宣言をし、「\u3042\u3044\u3046」を代入する。
  • [5] literalABCStringを表示する。
  • [6] literalABCUtf16Codeを表示する。
  • [7] literalAIUStringを表示する。
  • [8] literalAIUUtf16Codeを表示する。
  • [9] literalABCStringとliteralAIUStringをconcatenatedStringに結合する。
  • [10] 文字列結合の結果concatenatedStringを表示する。

もっと詳しく

下記で文字列についてより詳しい説明をしている。こちらもご参考に。

まとめ

このページではJavaの文字列についてお伝えしてきた。参考にしていただければと思う。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する