補足記事
文字列と数値の足し算(連結)
Javaの「+」は、数値を足す時にも文字列をつなぐ時にも使います。文字列と数値が混ざった式ではどうなるのか、簡単な例で確かめてみましょう。
数値と数値
「数値 + 数値」の場合は、普通の足し算として評価されます。
| 式 | 評価した結果 |
|---|---|
5 + 8 | 13 |
文字列と文字列
「文字列 + 文字列」の場合は、文字を後ろに連結する形で評価されます。
| 式 | 評価した結果 |
|---|---|
"郵便" + "番号" | "郵便番号" |
数字もダブルクォーテーションで囲えば、数値としてではなくただの文字列としての数字になるので、こんな連結もあります(足し算にはならないので注意)。
| 式 | 評価した結果 |
|---|---|
"3" + "5" | "35" |
数値と文字列
数値と文字列を「+」することもできます。その際の法則について説明します。
まず、文字列と数値を足す場合、数値は文字列に変換されてから連結されます。数値と文字列のどちらが前でも、このルールは同じです。
| 式 | 評価した結果 |
|---|---|
3 + "5" | "35" |
"3" + 5 | "35" |
ただしちょっとややこしいのが、「+」演算子が複数ある「数値 + 数値 + 文字列」などの場合です。けど実は全然ややこしくないです。押さえるポイントはただ一つ、「+」が続く式は、左側から順番に一つずつ評価する。これだけです。一気につなげようとするからややこしいんです。
| 式 | 評価した結果 |
|---|---|
3 + "5" + "歳" | "35歳" |
"3" + 5 + "歳" | "35歳" |
3 + 5 + "歳" | "8歳" |
"今年で" + 3 + 5 + "歳" | "今年で35歳" |
一番下の例で言うと、まず一番左側の「"今年で" + 3」を評価するので、「"今年で3"」に置き換わって、そこに5を足して……という風に一つずつ順番にやっていけばいいだけです。
- "今年で" + 3 + 5 + "歳"3を文字列に変換して連結
- "今年で3" + 5 + "歳"5も文字列に変換して連結
- "今年で35" + "歳"最後に「歳」を連結
- "今年で35歳"
優先させたい数値同士の足し算がある場合は、そこを( )で囲ってあげれば、先に計算してくれます。
| 式 | 評価した結果 |
|---|---|
"今年で" + (3 + 5) + "歳" | "今年で8歳" |
この法則さえ分かっていたら、文字列と数値の「+」はOKです!
質問・コメント
0件この記事についての質問や、学習して気づいたことをお寄せください。
コメントを書く
コメントの受付は準備中です。入力しても送信・保存されません。
コメントと一緒に公開される名前です。
3,000文字以内。パスワードなどの個人情報は書き込まないでください。
コメントは管理者の承認後に公開されます。
この記事のコメント
まだコメントはありません。
受付開始後、承認されたコメントがここに表示されます。