학습할 것 (필수)

선택문 반복문

제어문

코드의 실행 흐름은 무조건 위에서 아래로 한 문장씩 순차적으로 진행되지만 조건에 따라 문장을 건너뛰고 때로는 한 문장을 반복해서 수행해야할 때가 있다. 이처럼 프로그램의 흐름을 바꾸는 역할을 하는 문장들을 제어문이라고 한다.

선택문

if-then

가장 기본적인 조건문으로 조건식과 괄호로 이루어져 있다.

if (조건식) {
  // 조건식이 참일 떄 수행될 문장들
}

if-then-else

if문에 else블럭이 추가된 형식. 조건식의 결과가 참이 아닐 때 else블럭을 수행시킨다. 따라서 조건식의 결과에 따라 두 개의 블럭중 하나는 무조건 수행된다. 두 개의 블럭이 모두 수행되거나 수행되지 않는 경우는 있을 수 없다.

if(조건식) {
  // 조건식이 참일 때 수행될 문장들
} else {
  // 조건식이 거짓일 때 수행될 문장들
}

switch

If-then, if-then-else 문과는 다르게 switch문은 여러개의 선택지를 가질 수 있다. 그 선택지는 byte, short, char, int와 같은 프리미티브 데이터 타입과 String 타입, 또는 enum타입이어야 한다. switch라고 쓰여져있는 부분을 switch문, 또는 switch블럭이라고 하고 스위치블럭 안의 코드들은 case나 default로 레이블될 수 있다. 해당 조건식을 만족하는지에 따라 맞는 case나 default가 실행된다.

int number = 3;
String numToString;
switch (number) {
  case 1: numToString = "One";
          break;
  case 2: numToString = "Two";
          break;
  case 3: numToString = "Three";
          break;
  }
System.out.println(numToString); // 'Three'가 출력

switch문은 if-then-else로 바꿀 수 있다. 조건문을 if-then-else로 할 지 switch로 할 지는 결정하는 건 코드의 가독성과 안에 들어가는 조건식 자체가 무엇을 판단하고자 하는지에 있다. If-then-else의 조건식이 값의 범위나 상태를 판단한다면 switch의 조건식은 한 정수값, 또는 enum 값, 또는 String 값만을 나타낼 수 있다.

반복문

어떤 작업이 반복적으로 수행되도록 할 때 사용된다.

for

for문은 초기화, 조건식, 증감식으로 이루어져있고 조건식이 참인 경우 블럭안의 코드들이 수행된다. 제일 먼저 초기화가 수행되고 조건식이 맞으면 블럭이 수행되고 증감식이 실행된다. 조건식이 거짓이 되면 블럭을 빠져나와 for문 다음의 코드가 수행된다.