728x90
10.1 문장과 블록
- 없음
10.2 if-else
- 없음
10.3 switch
switch ( 표현식 ) {
case n : statements
case m : statements
default : statements
}
- 표현식은 정수 타입이나 enum 타입 중 하나여야 한다. switch 문의 몸체는 switch 블록이라 하며 case 라벨을 포함할 수 있다. case 라벨은 정수 또는 enum 상수이다. switch 표현식이 case 라벨의 값과 일치한다면 제어는 해당 라벨의 첫 번째 문장으로 이동하고 일치하는 case 라벨을 찾지 못한 경우에는 default 라벨의 첫 번째 문장으로 이동한다. default 라벨도 존재하지 않는다면 switch 문은 종료된다.
- break 문이 없다면 실행은 default 라벨까지 실행된다.
- 만약 제어를 다음 case 라벨로 넘겨야 한다면 FALLTHROUGH 주석과 같이 제어가 넘어간다는 것을 주석으로 달아 놓는 것이 좋은 코딩 습관.
- return 문을 사용하여 제어를 switch 블록 밖으로 넘길 수 있다.
- case 라벨에서 문장을 종료시키는 것처럼 switch 문의 마지막 문장도 break나 return 또는 throw로 종료해야 한다.
- switch 문에서 각각의 case 값은 유일해야 하며 default 라벨은 하나만 존재해야 한다.
- switch 블록의 첫 문장은 라벨이어야 하며 라벨이 아닌 문장이라면 도달할 수 없는 코드가 된다. 컴파일 X
10.4 while과 do-while
- 표현식이 false일 때까지 반복하며 표현식이 false가 되면 제어는 while문 이후로 넘어간다.
10.5 for
- 두 개의 서로 다른 타입인 변수를 초기화하고 싶다면, 변수들을 for문에 선언하지 말아야 한다.
- 향상된 for문은 컬렉션 클래스나 Iterable 인터페이스를 구현하는 클래스를 반복하는 것을 쉽게 해준다.
10.6 라벨
- 라벨문을 사용하여 참조할 곳에 이름을 지정할 수 있다.
- label : statement
10.7 break
- break문에 라벨을 지정하면 해당 라벨의 문장을 종료할 수 있다.
10.8 continue
- continue문은 오직 반복문 내에서만 사용 가능. 제어를 반복문 몸체 끝으로 이동시켜 반복을 다시 수행한다.
- 라벨이 없는 형식의 continue 문은 반복문의 몸체 끝으로 제어를 이동시키며, 라벨이 있으면 라벨이 선언되어 있는 반복문의 끝으로 제어를 이동시킨다.
10.9 return
- return 문은 생성자를 빠져 나오기 위해서도 사용한다.
- 이 때 생성자는 반환 타입을 가질 수 없기에 생성자 내에 사용된 return문에는 반환 값을 지정할 수 없다.
10.10 goto 사용 불가
- 없음
728x90
'도서 > 자바 프로그래밍 언어 - James Gosling' 카테고리의 다른 글
[자바 프로그래밍 언어] 12장 예외와 검증 (0) | 2021.12.31 |
---|---|
[자바 프로그래밍 언어] 11장 제네릭 타입 (0) | 2021.12.31 |
[자바 프로그래밍 언어] 9장 연산자와 표현식 (0) | 2021.12.28 |
[자바 프로그래밍 언어] 8장 기본 타입과 래퍼 클래스 (0) | 2021.12.27 |
[자바 프로그래밍 언어] 7장 토큰, 값, 변수 (0) | 2021.12.27 |
댓글