if文の中で宣言した変数のスコープ - 萌えJava超入門
第十三章 変数とスコープ

if文の中で宣言した
変数のスコープ

宣言してから、if文の「}」(閉じ波カッコ)までが変数のスコープです。

if文の中で宣言した変数のスコープ

着色部分がそれぞれの変数のスコープになります。
スコープが重複しなければ同名の変数を宣言できます。

ここでの変数はメソッドの中なので
ローカル変数だ。

//Sample08_031.java
class Sample08_031{
  static String method_if(int i){
      String str1;
      if(i == 1){
int x = 666; str1 = x + "!";
}else{
int x = 777; str1 = x + "!";
} return str1; }//ちなみに str1のスコープはここまで。 public static void main(String[] args){ String str = method_if(1); System.out.println(str); } }

コマンドライン
>javac Sample08_031.java
>java Sample08_031
666!

私は、if-else文の中で変数を宣言するなら
同じ名前の変数を何度も宣言してしまう。
良いのか悪いのかは分からん。
そんなんでいいんスか?
あんまり気にしてると
ハゲるわよ。
私もエラそうなことを言ってるが、
だいたい建前だ。
実際ひどいコードを余裕で書いてたりする。
動いたもの勝ちだ!




こらこら。

お疲れ様でした。




© 2019 awasekagami