Skip to content

Latest commit

 

History

History
101 lines (83 loc) · 3.08 KB

4장.md

File metadata and controls

101 lines (83 loc) · 3.08 KB

4. 조건문과 반복문


4.1 코드 실행 흐름 제어

  • 보통 메소드 {에서 }까지 위에서 아래 흐름으로 실행하지만, 원하는 방향으로 흐름을 바꿀 수 있도록 하는 것 = 제어문
  • 제어문은 조건문(if, switch)와 반복문(for, while, do-while)이 있다.

4.2 조건문

4.2.1~4 if문

  • 조건식의 결과에 따라 블록 실행 여부 결정
  • 조건식엔 true, false 값을 산출하는 연산식 또는 boolean 변수가 온다.
  • 조건이 true인 경우, 실행할 문장이 하나라면 {} 생략 가능 생략하지 않는게 모쪼록 좋다.. why? ㄱ ㅏ독성, 버그 원인 때무네
  • if-else문은 if 조건식이 true면 if 블록 실행, false면 else 블록 실행
  • if-else if-else문 순서대로 true인 if, else if 블록이 실행 but 다 false이면 else 블록 실행

4.2.5 switch문

switch(변수){
	case1:
    	
        break;
    case2:
    
    	break;
    case3:
    
    	break;
    default:
}
  • 변수값에 따라 실행문이 결정 (if문보다 코드 간결)
  • 변수값으로 정수와 문자(char), 문자열(string)이 올 수 있다.
  • 괄호 안 값과 동일한 값을 갖는 case로 가 실행문 실행
  • 동일한 값 case가 없으면 default 실행
  • break가 업으면, 다음 case가 연달아 case값에 상관없이 실행
  • default 생략 가능

4.3 반복문

작업을 반복적으로 실행하기 위해 사용

4.3.1 for문

  • for문 기본 형태
for(초기화식 ; 조건식 ; 증감식){
	실행문
}
  • 초기화식은 다음과 같이 생략할 수 있다.
int i = 1;
for(;i<=100;i++){~~~~}
  • 초기화식, 증감식은 둘 이상일 수 있다. 이때는 쉼표로 구분
for(int i = 0, j = 100; i<=50, j>=50; i++,j--){~~~~}
  • 초기화식에서 선언된 변수는 로컬 변수이므로 for문 밖에서 사용 불가. but, for문 이전에 선언했다면 외부에서 사용 가능
  • 초기화식에 부동소수점 타입을 사용하면 안됨. 0.1은 float 타입으로 정확히 표현할 수 없는 경우가 있자네

4.3.2 while문

while(조건식){
	실행문
}
  • 조건식이 true인 경우 반복해서 실행, false인 경우 종료
  • 조건신엔 boolean변수나 true/false 값을 산출하는 어떠한 연산식도 가능
  • while이 무한히 실행되는 무한 루프가 생길 수 있다.

4.3.3 do-while문

do{
	실행문
}while(조건식);
  • while문과 비슷하지만, 조건식 확인 순서가 다르다.

4.3.4 break문

반복문, switch문의 실행 중지를 목적으로 사용된다.

  • 반복문이 중첩된 경우 가장 가까운 반복문만 종료한다.
  • 중첩된 반복문의 경우, 바깥족 반복문까지 종료시키려면 바깥쪽 반복문에 이름을 붙이고 "break 이름;"을 사용
Label: for(){
		for(){
        	break Label;
		}
}

4.3.5 continue문

  • 반복문인 for, while, do-while문에서만 사용
  • 블록 내부에서 continue문이 실행되면 증감식 또는 조건식으로 이동