手を動かして学ぶ Java入門 (文字列の連結)
環境構築不要! ブラウザから直接コードを実行できます。
本記事では、Java で文字列を連結する方法について学びます。
10分くらいで、さくっと終わる記事をめざしています。
シリーズ一覧
- シリーズ
- 手を動かして学ぶ Java入門 (Hello world 編)
- 手を動かして学ぶ Java入門 (数値と演算)
- 手を動かして学ぶ Java入門 (数値と変数)
- 手を動かして学ぶ Java入門 (コメントの書き方)
- 手を動かして学ぶ Java入門 (文と式の違い)
- 手を動かして学ぶ Java入門 (if文)
- 手を動かして学ぶ Java入門 (if-else文、if-elseif文)
- 手を動かして学ぶ Java入門 (文字列の連結)
- 手を動かして学ぶ Java入門 (while文)
- 手を動かして学ぶ Java入門 (break文)
- 手を動かして学ぶ Java入門 (continue文)
- 手を動かして学ぶ Java入門 (for文)
- 手を動かして学ぶ Java入門 (クラスの超基本)
- 手を動かして学ぶ Java入門 (クラス・メソッド)
- 手を動かして学ぶ Java入門 (クラス・フィールド)
- 手を動かして学ぶ Java入門 (クラス・コンストラクタ)
- 手を動かして学ぶ Java入門 (文字列クラス)
- 手を動かして学ぶ Java入門 (静的メソッド)
- 手を動かして学ぶ Java入門 (静的フィールド)
続きは近日公開予定!
はじめに
この記事は paiza.IO の「Online Java compiler」を利用しています。
2024/11/18 現在、上記環境の Java バージョンは 18 です。(paiza.IO利用ガイド)
実行したコードは paiza.IO で保存および公開されることがあります。
そのため、個人情報などの機密性の高い情報は、コードとして入力しないようにご注意ください。
詳細は paiza.IO の利用規約およびプライバシーポリシーをご確認ください。
文字列のおさらい
文字列とは、"Hello, world!" のような文字の集まりのことをいいます。
a, b, c, d ... と文字が列のように連なっているからですね。
Java で文字列を書くときには、文字列を " ... " とダブルクォーテーションで囲います。
( " ← がダブルクォーテーション )
例えば、次のようなコードです。
"Hello, world!"
そして、文字列を表示するには System.out.println メソッドを使います。
System.out.println("Hello, world!");
「手を動かして学ぶ Java入門 (Hello world 編)」で学んだ内容ですね。
実際に動作を確認してみましょう。
コードは変更せずに、そのまま「実行(Ctrl-Enter)」ボタンを押してください。
(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)
いかがでしたでしょうか? 「出力」のところに
Hello, world!
と表示されたら成功です。
文字列の連結
文字列 + 文字列
文字列は + 記号で連結できます。
例えば、次のようなコードです。
"abc" + "xyz"
また、+ 記号を使えばいくらでも連結できます。
- 文字列 + 文字列 + 文字列 + ...
実際にコードで確認してみましょう。
コードは変更せずに、そのまま「実行(Ctrl-Enter)」ボタンを押してください。
(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)
いかがでしたでしょうか? 「出力」のところに
abcxyz
ABCDEFGHI
と表示されたら成功です。
文字列 + 数値
「文字列 + 文字列」が連結できることは確認できました。
次は「文字列 + 数値」です。
これも文字列として連結できます。
例えば、次のようなコードです。
"abc" + 123
さて、上記のコードは「式」です。
"abc" + 123
^^^^^^^^^^^ <-- 式
以前の記事 で学びましたが、「式」は結果を返します。
その結果は 文字列 になるのでしょうか? それとも 数値 でしょうか?
答えは 文字列 です。
"abc" + 123 の結果は、文字列の "abc123" になります。
文字列 と 数値 を連結すると、文字列 になるわけですね。
また、数値を直接連結するだけでなく、数値の入った変数も連結できます。
int a = 456;
System.out.println("a = " + a);
こんな感じです。
実際に確認してみましょう。
結果を予想してから、「実行(Ctrl-Enter)」ボタンを押してください。
(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)
もう1つ、文字列と数値の連結の例を見てみましょう。
"abc" + 10 + 20
この結果は "abc1020" になります。
+ 記号は左から順番に処理されます。
そのため、まず "abc" + 10 が連結されて、次に "abc10" + 20 が連結されるわけですね。
もし、+ 記号による処理の順番を変えたい場合は、小かっこ ( ... ) を使います。
小かっこで囲われた演算が優先して処理されます。
"abc" + (10 + 20)
このように「数値 + 数値」を優先させると、それは足し算として処理されます。
実際にコードで確認してみましょう。
(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)
応用問題
【問題】
まずは、下記のプログラムをそのまま「実行(Ctrl-Enter)」してみましょう。
「出力」には 30abc と表示されたはずです。
これは、
10 + 20 + "abc"
の「式」において、+ 記号による演算が左から順番に処理されているためです。
最初に、数値 として 10 + 20 が処理されるわけですね。
そこで問題です。
この「式」に小かっこである、( と ) だけを書き加えて、「出力」に 1020abc と表示されるようにしてください。
それでは、下のプログラムに小かっこを書き加えて「実行(Ctrl-Enter)」してみましょう。
(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)
無事に、
1020abc
と出力されましたでしょうか?
もし解けなかった場合は、下記の回答例をご参照ください。
回答例
【コード】
public class Main {
public static void main(String[] args) {
System.out.println(10 + (20 + "abc"));
}
}
【出力】
1020abc
まとめ
Java の文字列は、次のように + 記号で連結できます。
"abc" + "xyz"
また、「文字列 + 文字列」だけでなく「文字列 + 数値」も連結できます。
"abc" + 123
とてもよく使う文法なので、ぜひ身につけて活用していきましょう。
次回は「手を動かして学ぶ Java入門 (while文)」になります。
関連記事
- シリーズ
- 手を動かして学ぶ Java入門 (Hello world 編)
- 手を動かして学ぶ Java入門 (数値と演算)
- 手を動かして学ぶ Java入門 (数値と変数)
- 手を動かして学ぶ Java入門 (コメントの書き方)
- 手を動かして学ぶ Java入門 (文と式の違い)
- 手を動かして学ぶ Java入門 (if文)
- 手を動かして学ぶ Java入門 (if-else文、if-elseif文)
- 手を動かして学ぶ Java入門 (文字列の連結)
- 手を動かして学ぶ Java入門 (while文)
- 手を動かして学ぶ Java入門 (break文)
- 手を動かして学ぶ Java入門 (continue文)
- 手を動かして学ぶ Java入門 (for文)
- 手を動かして学ぶ Java入門 (クラスの超基本)
- 手を動かして学ぶ Java入門 (クラス・メソッド)
- 手を動かして学ぶ Java入門 (クラス・フィールド)
- 手を動かして学ぶ Java入門 (クラス・コンストラクタ)
- 手を動かして学ぶ Java入門 (文字列クラス)
- 手を動かして学ぶ Java入門 (静的メソッド)
- 手を動かして学ぶ Java入門 (静的フィールド)