if문
-
Java 020. switch - case 조건문2023.04.09
-
Java 015. 조건문 / 반복문을 사용한 369 게임2023.03.31
-
Java 014. 반복문 예제 구구단 / 정수 출력2023.03.31
-
Java 007. 조건문(conditional statement) if문2023.03.19
Java 020. switch - case 조건문
switch - case 조건문
switch - case문은 if - else문과 비슷한 조건 제어문이다.
하지만 switch문은 if문처럼 조건식이 true일 경우에 실행문을 실행하는 것이 아닌
변수의 값에 따라 실행문이 선택된다.
조건식의 변수의 값에 따라 해당 case위치로 이동해서 break를 만날 때 까지 코드를 실행한다.
if문은 조건식의 결과가 true, false 두 가지밖에 없기 때문에 경우의 수가 많아질수록 else - if를 반복적으로 추가해줘야하는 반면에 switch문은 변수의 값에 따라서 실행문이 결정되기 때문에 if문보다 간결하게 코드를 작성할 수 있다.
switch (조건식) { case 값 1: 실행문1; break; case 값 2: 실행문2; break; ... ... default: 실행문; } |
default는 조건식이 모든 case가 아닐때 실행한다.
case에 사용 가능한 변수 타입
- 정수 : byte, short, int, long, char
- 문자열 : String
- 열거형 자료 타입(enum)
정수를 사용한 swtich문
int n = 17;
switch (n % 2) {
case 0:
System.out.println("짝수");
break;
case 1:
System.out.println("홀수");
break;
}
실행 결과 =
홀수
*switch문에서는 실수 float, double을 사용할 수 없다.
double x = 1.0;
switch (x) {
case 1.0:
break;
case 2.0:
break;
}
문자열을 사용한 swtich문
String time = "점심";
switch (time) {
case "아침":
System.out.println("breakfast");
break;
case "점심":
System.out.println("lunch");
break;
case "저녁":
System.out.println("dinner");
break;
default:
System.out.println("snack");
}
실행 결과 =
lunch
*switch문에서는 boolean(==)을 사용할 수 없다.
enum 타입을 사용한 switch문
열거형 자료 타입인 enum(enumeration type)은 한정된 값(상수)들만 갖는 데이터 타입이다.
public enum Season {
SPRING, SUMMER, FALL, WINTER;
}
이런식으로 개발자가 정의하여 타입을 만든 것이 enum이다.
Season s = Season.WINTER;
switch (s) {
case SPRING:
System.out.println("봄");
break;
case SUMMER:
System.out.println("여름");
break;
case FALL:
System.out.println("가을");
break;
case WINTER:
System.out.println("겨울");
break;
(enum은 따로 정리를 할 예정이다.)
'language > Java' 카테고리의 다른 글
Java 022. MyBatis 오류 ReflectionException: Error instantiating class ... with invalid types ... or values ... Cause: java.lang.IllegalArgumentException (0) | 2023.06.25 |
---|---|
Java 021. 배열(Array)(1) (0) | 2023.04.09 |
Java 019. 무한 루프 while문 / switch문 / 입출금 자바 프로그램 (0) | 2023.04.09 |
Java 018. for / while 문을 사용해서 별(*) 을 삼각형으로 출력하기 (0) | 2023.04.03 |
Java 017. 이중 반복문 for / while / break (2) (0) | 2023.04.02 |
Java 015. 조건문 / 반복문을 사용한 369 게임
3 6 9 프로그램 만들기
1~100까지 3, 6, 9가 들어가는 경우 "*" 출력하고,
10의 배수인 경우 줄 바꿈 해준다.
3, 6, 9 가 1의 자릿수 와 10의 자릿수에 동시에 들어가면 "**" 을 출력한다.
(실행결과는 맞게 나오지만 너무 억지스러운 코드...)
3, 6, 9 가 1의 자릿수 와 10의 자릿수에 동시에 들어갈때 "**"으로 출력되게 하려고 했는데,
n == 33 | n == 36 ... 이렇게 해보니 결과가 맞게 나오지 않아서
위처럼 했는데 맞는 결과가 나오긴했다...
int n1 = n % 10;
n을 10으로 나눈 나머지
int n10 = n / 10;
n을 10으로 나눈 몫
condition1 = 1의 자리가 3 이거나 6이거나 9이면 true
condition2 = 10의 의 자리가 3이거나 6이거나 9이면 true
condition1 과 condition2이 둘다 참이면 "**" 출력
condition1이 참이거나 condition2 이 참이면 "*" 출력
아니면 숫자 그대로 출력
만약 n을 10으로 나눈 나머지가 0이면 (10의 배수이면) 줄바꿈
'language > Java' 카테고리의 다른 글
Java 017. 이중 반복문 for / while / break (2) (0) | 2023.04.02 |
---|---|
Java 016. 이중 반복문 for / while (1) (0) | 2023.04.02 |
Java 014. 반복문 예제 구구단 / 정수 출력 (0) | 2023.03.31 |
Java 013. 반복문(iteration statements) for문 (0) | 2023.03.29 |
Java 012. 조건문을 사용한 가위 바위 보 게임 (0) | 2023.03.20 |
Java 014. 반복문 예제 구구단 / 정수 출력
구구단 2단 만들어보기
System.out.printf(문자열 템플릿/포맷, 템플릿을 채울 값들); 채우는 값은 무조건 순서대로 작성해주기.
%d : 정수
%f : 실수
%s : 문자열
\n : 줄바꿈(new line)
\t : 탭(tap)
정수 1부터 100까지 출력. 10단위로 줄바꿈.
반복문 조건식 : 1부터 100까지 반복. 반복할 때 마다 탭(tap)
조건문 조건식 : n을 10으로 나눈 나머지가 0인 지, 아닌 지 -> 0이면 줄바꿈 -> 0이 아니면 for문으로 다시 올라가서 반복.
'language > Java' 카테고리의 다른 글
Java 016. 이중 반복문 for / while (1) (0) | 2023.04.02 |
---|---|
Java 015. 조건문 / 반복문을 사용한 369 게임 (0) | 2023.03.31 |
Java 013. 반복문(iteration statements) for문 (0) | 2023.03.29 |
Java 012. 조건문을 사용한 가위 바위 보 게임 (0) | 2023.03.20 |
Java 011. 조건문과 난수2 (0) | 2023.03.20 |
Java 007. 조건문(conditional statement) if문
if문
조건식의 결과가 true, false이냐에 따라 실행문이 결정된다.
조건식이 true이면 블록을 실행하고, false이면 블록을 빠져나간다.
if-else문
조건식의 결과가 true이면 if문의 블록이 실행되고,
조건식의 결과가 false이면 else문의 블록이 실행된다.
if-else if-else문
조건문이 여러개인 if문이다.
처음 if문의 결과가 false일 경우 그 다음의 else if문의 블록이 실행되고, 또 false일 경우 그 다음의 else if를 실행한다.
만약 모든 조건식이 false일 경우 esle 블록을 실행한 후 if문이 종료되어 if문에서 빠져나간다.
중첩 조건문
중첩 조건문은 if 블록 또는 else 블록 안에서 조건문을 다시 한번 작성하는 것이다.
'language > Java' 카테고리의 다른 글
Java 009. 조건문과 논리 연산자 (0) | 2023.03.19 |
---|---|
Java 008. 조건문을 사용한 성적 처리 프로그램 (0) | 2023.03.19 |
Java 006. 연산자(operator) (0) | 2023.03.19 |
Java 005. Scanner를 사용한 변수 저장 (0) | 2023.03.19 |
Java 004. 변수(Variable) (0) | 2023.03.18 |