広告

手を動かして学ぶ Java入門 (文字列の連結)

環境構築不要! ブラウザから直接コードを実行できます。
本記事では、Java で文字列を連結する方法について学びます。

10分くらいで、さくっと終わる記事をめざしています。


シリーズ一覧

続きは近日公開予定!

はじめに

この記事は paiza.IO の「Online Java compiler」を利用しています。
2024/9/30 現在、上記環境の Java バージョンは 18 です。(paiza.IO利用ガイド)

実行したコードは paiza.IO で保存および公開されることがあります。
そのため、個人情報などの機密性の高い情報は、コードとして入力しないようにご注意ください。

詳細は paiza.IO の利用規約およびプライバシーポリシーをご確認ください。

文字列のおさらい

文字列(もじれつ)は、単語や文章のような、文字の連なったもの。ストリング (string)、テキスト (text) という場合もある。コンピュータ、特にプログラミングの分野で用いることが多い。

文字列とは、"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 が連結されるわけですね。

イメージ図1

もし、+ 記号による処理の順番を変えたい場合は、小かっこ ( ... ) を使います。
小かっこで囲われた演算が優先して処理されます。

"abc" + (10 + 20)

このように「数値 + 数値」を優先させると、それは足し算として処理されます。

イメージ図2


実際にコードで確認してみましょう。

(表示がおかしいときは「コードの再読み込み」ボタンを押してみてください)


応用問題

【問題】

まずは、下記のプログラムをそのまま「実行(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文)」になります。


関連記事

ページの先頭へ