일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Service
- null 병합 연산자
- docker swarm
- VPC
- 자바스크립트
- 온프레미스
- DynamoDB
- AWS
- On-Premise
- vgw
- 비구조화 할당
- optional chaining
- Endpoints
- JavaScript
- 단축 평가
- 옵셔널 체이닝
- transit gateway
- api gateway
- elasticsearch
- grafana
- Site-to-Site VPN
- prometheus
- docker
- Custom Resource
- Proxy Resource
- CloudFormation
- cognito
- Await
- Kubernetes
- 구조분해 할당
- Today
- Total
만자의 개발일지
[Java] Switch 표현 정리 본문
보통 우리가 switch문에서 사용하는 예약어는 switch,case,default,break 등이 있다.
switch문에서 소괄호()안에는 변수 혹은 값이 들어가야 한다. ex) switch(month){}
위 코드를 보면 month가 1로 선언되어있고 switch문안에 month가 주어진걸 볼 수 있다.
case 1: 이 month의 값과 일치하기 때문에 "겨울입니다"를 출력하게 된다.
만약 month의 값이 6이라면 "여름입니다"를 출력하게 될 것이다.
switch에서 break는 아주 중요한 역할을 한다.
위 코드를 보자.
아까처럼 month의 값은 1로 동일하다. 그치만 결과를 보니 "겨울입니다" 만 출력되야하는데 나머지도 전부 출력되었다.
이처럼 break를 써주지 않으면 switch문을 빠져 나가지 않고 case 1: 밑에 있는 코드들을 전부 실행하게 된다.
default는 case에 지정해준 값이 아닌 그 외의 값이 들어갔을때 실행된다. case가 들어오는 값을 모두 커버해주지 않는 경우라면 default를 꼭 사용하는것을 권장한다.
위의 코드를 좀 더 간편하게 바꿔 보자.
Java SE 12버전 부터 추가된 문법이다.
첫번째 코드와 기능은 똑같다. 확실히 가독성이 올라간게 보인다.
Java SE 13버전 부터 yield라는 예약어가 추가되었다.
위코드들과 기능은 똑같다. month가 1 일때 season 변수에 "겨울입니다"가 들어가게 되고 switch문을 빠져나온다.
다만 switch문에 ;(세미콜론)을 붙여줘야한다.
원래 예약어는 변수로 선언이 불가능한데 특이하게도 yield는 변수 선언이 가능하다
기존에 불편했던 switch문법이 많이 개선되고 있는거 같다. 😀
'Java > Java' 카테고리의 다른 글
[Java] Call by value 와 Call by reference (0) | 2021.06.16 |
---|---|
[Java] Java에서 MySQL 접속하기 (0) | 2021.05.02 |
[Java] Anonymous Class(익명클래스) 란? (0) | 2021.03.02 |
[Java] String matches (0) | 2021.02.26 |
이클립스 .java 파일 cmd로 실행하기 (0) | 2021.02.25 |