변수의 범위
1. 변수의 범위 (=변수의 스코프)
int num = 100;
if (num == 100) {
// num이 현재 블록 바깥에서 선언되었으므로 유효
System.out.println(num);
}
-------------------------------------------------------------------
int num = 100;
for (int i=0; i<10; i++) {
//유효
System.out.println(num+i);
}
- 자신이 선언된 블록 밖으로는 빠져나갈 수 없다.
int num = 100;
if ( num == 100 ) {
//변수 result가 if 블록 안에서 생성되었으므로 사용 불가
int result = num + 100;
}
System.out.println(result);
-------------------------------------------------------------------
for (int i=0; i<10; i++) {
.....
}
// i가 for문을 위한 괄호 안에서 사용되었으므로 사용 불가
System.out.println(i);
- 블록 안에서 선언된 변수는 블록 밖에서 존재하는 동일한 이름의 변수와는 이름만 동일할 뿐, 다른 값으로 인식
int target = 100;
if (target == 100) {
int num = target + 100;
} else {
int num = target - 100;
}