선택문
- if
- 만일 조건식이 참이면 괄호안의 문장들을 실행하라
if (true) { System.out.println(true); } if (조건식) 조건식이 true이면 {} block안의 내용을 실행하라
-
조건식은 일반적으로 비교연산자와 논리연산자로 구성된다.
-
조건식의 결과가 true 나 false가 되지 않는다면 에러가 발생한다.
-
문장이 하나일경우 {} block을 생략할수 있다.
- if - else 문
- if문의 변형으로 if문의 조건이 false일 경우 else {} 블럭이 실행된다.
if (true) { System.out.println(true); } else { System.out.println(false); } if (조건식) 조건식이 false일 경우 else { } block안의 내용을 실행하라
- 문장이 하나일경우 {} block을 생략할수 있다.
- if - else if 문
- 처리해야할 경우의 수가 3가지 이상일 때 사용된다.
if (true) { System.out.println(true); } else if (true){ System.out.println("else if True"); } else { System.out.println(false); } if (조건식) 조건식false 일 경우 else if (조건식) 의 조건식이 true 일 경우 else if {} block 안의 내용을 실행하라. else if (조건식) 의 조건식이 false 일 경우 else {} block 안의 내용을 실행하라.
- 중첩 if 문
- if문안에 if문을 사용 할 수 있다.
if (true) { if (true) { System.out.println(true) } } if문의 조건식이 true 이고 block 안에 있는 if문의 조건식이 true 이면 {} 블록 안에 있는 System.out.println(true)을 실행하라.
- switch문
- if문은 조건식의 결과가 참과 거짓 두가지 뿐이지만 switch문은 단하나의 조건으로 여러 경우의수를 처리 할 수 있다.
Switch (1) { case 1: System.out.println(1); break; case 2: System.out.println(2); break; default: System.out.println(3) } switch문의 조건식의 결과와 일치하는 case 문을 실행한다. case 값 과 같은 방식으로 이루어져 있으며 결과값은 값과 비교한다. 일치하는 결과값이 없을 경우 default문이 실행된다.
-
case문 내부에 break문을 빼먹는다면 switch {} 블럭의 모든 case들을 실행한다.
-
switch문의 제약조건
- switch문의 조건식 결과는 정수 또는 문자열 이어야 한다.
- case문의 값은 정수 상수만 가능하며, 중복되지 않아야 한다.
반복문
- 반복문은 어떤 작업을 반복적으로 수행되도록 할 때 사용된다.
- for문이나 while문에 속한 문장은 조건에 따라 한번 도 수행되지 않을 수 있지만
- do while은 무조건 한번은 수행되는것이 보장된다.
-
for문
- for문은 반복 횟수를 알고 있을 때 적합하다.
-
초기화
- 반복문에 사용될 변수를 초기화 하는 부분이며 한번만 실행된다.
- 보통 1개만 사용되지만 2개를 사용하고 싶다면 , (콤마) 를 구분자로 변수를 초기화하면 된다.
- 단 두 변수의 타입은 같아야 한다.
-
조건식
- 조건식 값이 참 이면 반복문을 계속하고 거짓이면 반복문을 중단하고 for문을 벗어난다.
-
증감식
- 반복문을 제어하는 변수의 값을 증가 또는 감소시키는 식
-
for문 역시 중첩으로도 사용 가능하다.
-
향상된 for문 ( enhanced for statement)
for ( 타입 변수명 : 배열 또는 컬렉션) { //반복할 문장 } int[] arr = new int[10]; for (int a : arr) { //반복할 문장 }
- 간결하지만 배열이나 컬렉션에 저장된 요소들을 읽어오는 용도로만 사용하는 제약이 있다.
- while문
- 조건식이 참인 동안만 {} block 내의 문장을 실행하라
while (조건식) { // 조건식의 연산결과가 참인 경우만 실행 }
- while문의 조건식은 생략 불가하다.
- do - while 문
- do while문은 while문의 변형으로 while문과 구조는 같지만 앞에 do와 {} block이 붙어있어 이 block이 먼저 한번은 무조건 수행된다.
do { } while (조건식);
- 한번은 수행되지만 그 이후로는 조건식이 참이여야 수행된다.
- break문
- 자신이 포함된 가장 가까운 반복문을 벗어난다.
- 주로 while에서 if문과 함께 while문을 탈출할때 많이 사용한다.
while (true) { System.out.println(true); if (true) { break; } }
- continue 문
- continue문은 반복문 내에서만 사용될 수 있으며 반복이 진행되는 도중 continue문을 만나면 반복문의 끝으로 이동되어 다음 반복으로 넘어간다.
- for문의 경우 증감식으로 이동되며
- while과 do-while문은 조건식으로 이동한다.
while (true) { System.out.println(true); if (true) { continue; } } continue;를 만나면 다시 while의 조건문으로 이동한다. for (int i=0; i<10; i++) { System.out.println(true); if (true) { continue; } } continue를 만나면 증감식으로 이동한다.
출처
java의 정석
'백선생님 온라인스터디' 카테고리의 다른 글
7주차 - 패키지 (0) | 2021.01.12 |
---|---|
6주차 상속 (0) | 2021.01.10 |
3주차 연산자 (0) | 2021.01.07 |
연산자 (0) | 2020.11.28 |
스터디 2주차 - 자바 데이터타입, 변수 그리고 배열 (0) | 2020.11.21 |