JAVA 반복문 & 변수의 범위

박종휘·2022년 5월 17일
0

JAVA - 국비

목록 보기
7/29
post-thumbnail
post-custom-banner

1. 반복문

1-1. for 문

  • for문은 사람이 직접 처리하기에 부담스러운 반복적인 작업을 처리하기에 매우 용이하다.
  • (1) : 최초로 초기식 설정
  • (2) : 초기식을 설정한 다음에는 조건식을 판단
  • (3) : 만약 조건식이 참이라면 반복적으로 동작할 구문을 1회 수행한다.
  • (4) : 반복구문을 수행한 후, 증감식으로 이동
  • (5) : 증감식을 수행한 후, 다시 조건식으로 이동 → 여전히 조건식이 참이라면 반복수행을 처리하고, 그렇지 않다면 for문 종료

1-2. while 문

  • while문 역시 for문과 마찬가지로 반복적인 처리를 수행하는 문법
  • for문은 초기식, 조건식, 증감식을 모두 내장하는 반면, while문은 조건식만을 내장하기 때문에 초기식과 증감식을 외부에 따로 정의해 주어야 한다.

1-3. do ~ while 문

  • 조건의 판별을 나중에 수행하는 반복문 형태
  • 초기식을 설정한 후 do{...} 안의 문장을 우선적으로 1회 실행하고 조건을 판별하므로, 조건이 참이 아니더라도 최소 1회는 실행된다.

1-4. 무한 루프

  • 증감식이 설정되지 않거나, 증감식이 수행되더라도 조건식이 거짓이 되지 않는 형태
  • 조건식이 항상 참이므로, 반복문 종료 X
  • 프로그램의 PC의 자원을 매우 많이 사용하게 되므로, 시스템 다운 발생 가능

while문의 무한 루프 예

	while(true){
    	System.out.println("Hello");
    }

for문의 무한 루프 예

	for(int i = 0; i<10; i--) {
    	System.out.println("Hello");
        System.out.println(i);
    }

문법의 중첩 사용

1-5. 반복문에서의 흐름 제어

  • break : 반복문 안에서 break 키워드를 만나면 반복을 강제로 종료한다.
  • continue : 실행 흐름이 증감식으로 강제 이동된다.

2. 변수의 범위 (=변수의 스코프)

2-1. 자신보다 하위 블록으로는 침투할 수 있다.

	- 사용 가능
    int num = 100;
    if(num == 100){
    		System.out.println(num);
    }
    
    - 사용 가능
    int num = 100;
    for(int i = 0; i < 10; i++){
    		System.out.println(num+i);
    }
    

2-2. 자신이 선언된 블록 밖으로는 빠져나갈 수 없다.

	- 사용 불가 : 변수 result가 if 블록 안에서 생성되었으므로 사용 불가
    int num = 100;
    if(num == 100){
    		int result = num + 100;
    }
    System.out.println(result); -> 블록 밖에서는 사용할 수 없다.
    
    - 사용 불가 : i가 for문을 위한 괄호 안에서 사용되었으므로 사용 불가
    for(int i = 0; i < 10; i++){
    		...
    }
    System.out.println(i);

2-3. 블록 안에서 선언된 변수는 블록 밖에서 존재하는 동일한 이름의 변수와는 이름만 동일할 뿐, 다른 값으로 인식된다.

	- 사용 가능
    int target = 100;
    // int num = 50; -> 2-1에 의해 에러 발생
    if(target == 100) {
    		int num = target + 100;
    } else {
    		int num = target - 100;
    }
profile
개린이의 개발 고수되기 작전!
post-custom-banner

0개의 댓글