文字列の連結
値の演算には「+-*/」演算子を使って四則演算ができますが、例えば”おはよう”と”ございます”を繋げる場合(これを「文字列の結合」といいます)にも、演算子を使います。今回は文字列の結合について説明します。
文字列の結合 目次
1.文字列の結合とは
文字列の結合とは、例えば”おはよう”と”ございます”という2つの文字列を繋いで、”おはようございます”という1つの文字列にすることを言います。このように文字列と文字列を結合する際には、「文字列結合演算子」という演算子を使用します。
文字列結合演算子は「+」記号を使用し、文字列と文字列の間に「+」を置きます。
文字列 + 文字列
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1; strHensu1 = "おはよう" + "ございます"; System.out.println(strHensu1); } } ---------------------------------------------------------------- おはようございます
2.変数と文字列を結合する
先の例では、直接文字列同士を結合しましたが、文字列が格納された変数と文字列(または変数同士)を結合する際も、同じように使用できます。
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1; String strHensu2; strHensu1 = "おはよう" + "ございます"; strHensu2 = strHensu1 + "こんにちは"; System.out.println(strHensu2); } } ---------------------------------------------------------------- おはようございますこんにちは
strHensu1には”おはようございます”が格納されており、そのstrHensu1と”こんにちは”を結合して、「おはようございますこんにちは」という1つの文字列にしています。
3.変数同士の結合
変数同士で文字列結合することも可能です。
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1 = "おはよう"; String strHensu2 = "ございます"; String strHensu3; strHensu3 = strHensu1 + strHensu2; System.out.println(strHensu3); } } ------------------------------------------------------------------ おはようございます
7行目では、10 – 2 の結果をintHensu1に代入しています。11行目では、intHensu1の値に1を減算した結果を、再度intHensu1に代入しています。
4.文字列と文字列以外の結合
文字列と文字列以外の値を結合をするには注意が必要です。
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1; strHensu1 = "1" + "2"; System.out.println(strHensu1); strHensu1 = "おはよう" + "2"; System.out.println(strHensu1); strHensu1 = "おはよう" + 2; System.out.println(strHensu1); } } ------------------------------------------------------------------ 12 おはよう2 おはよう2
7行目では、”1″という文字列と”2″という文字列(数字)として結合していますので、結果は”12″となっています。10行目では、”おはよう”という文字列と”2″という文字列(数字)を結合しているので、結果は”おはよう12″となっています。
ここまではなんとなく分かると思いますが、13行目では、2はダブルコーテーションで囲んでいないので、パッとみれば数値と見なせます。しかし、「”おはよう” + 」というコードがあるので、これは文字列結合なんだ、と解釈されるので2も文字列結合されることになります。
これは、文字列結合演算子が持つ特性で、文字列と他のどんな型のデータでも文字列結合できるようになっています。int型やboolean型の変数とも文字列結合ができてしまいます。
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1; int intHensu2 = 10; boolean blnHensu3 = true; strHensu1 = "おはよう" + intHensu2 + blnHensu3; System.out.println(strHensu1); } } ------------------------------------------------------------------ おはよう10true
int型の変数とboolean型の変数を文字列結合していますが、int型の場合は数字そのもの、boolean型の場合はtrueかfalseが文字列として出力されていることが分かります。
5.System.out.printlnの中で直接指定
今までは、System.out.printlnは変数の中身をそのまま出力することしかしていませんでしたが、実はSystem.out.printlnで文字列や結合を行うことができます。
package pac01; public class HelloWorld { public static void main(String[] args) { String strHensu1; int intHensu2 = 10; boolean blnHensu3 = true; System.out.println("おはよう" + intHensu2 + blnHensu3); } } ------------------------------------------------------------------ おはよう10true
事前に文字列結合をした結果を変数に格納していたので、System.out.printlnの中に直接記述しても、同じ結果が出力されていることが分かります。
最近のコメント