Java言語では、データ型の異なる値を演算すると、自動的に型変換が行われます。文字列と数値の場合は、どうなるでしょう?

問題 - 文字列と数値の連結「難易度: 低」

次のようなJavaプログラムがあります。

int a = 100;
String b = "200";
String c = a+b;

さて、変数cにはそれぞれどのような値が入っているでしょうか?

Java言語では、データ型の異なる値を演算すると、自動的に型変換が行われます。文字列と数値の場合は、どうなるでしょう?

問題 - 文字列と数値の連結「難易度: 低」

次のようなJavaプログラムがあります。

int a = 100;
String b = "200";
String c = a+b;

さて、変数cにはそれぞれどのような値が入っているでしょうか?

解答

変数cに入っている値はString型の文字列"100200"。

解説

数値を扱うint型の値と文字列を扱うString型の値を+演算子で演算すると、int型の値が文字列に変換され、文字列が連結されます。

変数aに代入されている数値の100はString型の文字列"100"に変換され、変数bのString型の文字列"200"と連結するので、答えはString型の文字列"100200"となります。300にはなりません。

型変換のルールはプログラミングの基本。しっかり覚えておこう!