MENU

【Java】スコープとは

f:id:kiserukun:20210611090227p:plain

スコープとは

スコープとは有効範囲のことです。
 

 
例えば以下のようなコードを実行するとコンパイルエラーになります。

public class Main {
    public static void main(String[] args) {
        for(int i = 0; i < 5; i++){
            System.out.println(i);
        }
        System.out.println(i);
    }
}
>Main.java:6: error: cannot find symbol
        System.out.println(i);
                           ^
  symbol:   variable i
  location: class Main
1 error

 
これはfor文の外で変数 i を実行しようとしたため エラーが起こってしまいました。
 
上のコードの 変数iの有効範囲内は for文の中だけ ということになります。
 
for文内で宣言した変数はfor文内でしか使えません。for文を抜けた時に変数 i は消滅します。
 

変数iを使用したい場合

public class Main {
    public static void main(String[] args) {
        int i;
        for(i = 0; i < 5; i++){

        }
        System.out.println(i);
    }
}
>5

 
iの値を使用することができました。  
 

まとめ forやwhile、ifで宣言した変数の値は{ }で閉じられた中でしか使用することができない

 
 
 

未経験からエンジニアを目指すなら↓