switch文についてのお尋ねです。
switch文とは言っておりますがスイッチ文の引数やこの式の私の理解度について誤差や認識の違いをご指摘いただければと思います。
str1のフィールドにはa~kの文字列が入っています。
str2のフィールドにはnullが入っている。nullは何もないときの処理?と理解しています。
ここまでは大丈夫でしょうか。
本題はスイッチ文の中の(str1.charAt(5))というものについてです。
①char型の配列の5番目を受け取りたいと言っているの?
②()じゃなくて[]じゃないの?と思ってしまいました。
③5番目なら私のこれまでの勉強では
0:a 1:b 2:c 3:d 4:e (全部で5ある)
なのでcase'e'に当てはまるのでは?と混乱しています。
④最後にswitchの処理の中でもprintlnの中でもstr2を指定しているのはstr1と参照が同じだから問題なく表示されている。という認識で間違い無いでしょうか。
コード public class Main { public static void main(String[] args){ String str1 = "abcdefghijk"; String str2 = null; switch(str1.charAt(5)){ case 'e': str2 = "char E"; break; case 'f': str2 = "char F"; break; default: str2 = "other"; } System.out.println(str2); } }
回答4件
あなたの回答
tips
プレビュー