6
Javaスイッチ内での変数の宣言と初期化
Javaスイッチについて、おかしな質問があります。 int key = 2; switch (key) { case 1: int value = 1; break; case 2: value = 2; System.out.println(value); break; default: break; } シナリオ1 - key2として、それが正常値を出力2である 私がコメントするつもりだ-シナリオ2 value = 2でcase 2:、それは言ってsquawks ローカル変数の値が初期化されていないかもしれません。 質問: シナリオ1:実行フローがに進まないcase 1:場合(の場合key = 2)、値変数の型はどのようにしてわかりintますか? シナリオ2:コンパイラーが値変数のタイプをとして認識している場合は、。(宣言と初期化)の式にintアクセスしている必要があります。では、なぜローカル変数の値が初期化されていない可能性があると言ってコメントするつもりなのでしょうか。int value = 1;case 1:value = 2case 2: