학습내용
1. if else 구문
2. switch case 구문
3. 실습영상보기
---------------------------------
1. 단순 if구문
- 조건식의 결과가 참일 경우 if 구문 바로 아래의 문장 수행
- 조건식의 결과가 거짓일 경우 if구문 바로 아래의 문자은 건너뜀
- 문장은 한 라인일 수 도 있고 여러 라인일 수도 있음
- 문장이 한 라인일 경우 블록기호({ })를 사용하지 않아도 됨(해도됨)
- 문장이 여러 라인일 경우 반드시 블록 기호({ })를 사용함
if(조건식) {
문장
}
ex) 점수가 90점 이상일 경우 "합격"을 배정하는 문법(변수 score, result)
if(score >= 90) {
result = "합격";
}
-> score가 90점 미만인 경우 : false -> 수행하지 않음
2. 단순 if else 구문
- 조건식의 결과가 참일 경우 if 구문 바로 아래의 문장 수행
- 거짓일 경우 else 구문 아래의 문장 수행
if(조건식) {
문장1
} else {
문장2
}
ex) 점수가 90점 이상일 경우 result 변수에 "합격"을,
그렇지 않을 경우 result 변수에 "불합격"을 배정하는 문법
if(score >= 90) {
result = "합격";
} else {
result = "불합격";
}
3. 다중 if else 구문
- 조건식의 결과가 3개 이상일 경우 사용함
- 조건식이 여러개로 구성되며 두 번째 조건식부터는 elseif(조건식) 형태로 작성함
if(조건식1) {
문장1
} esleif(조건식2) {
문장2
} else {
문장3
}
ex) 점수가 90점 이상일 경우 result 변수에 "A"를,
80점 이상일 경우 "B"를, 그 외의 경우 "C"를 배정
if(score >= 90) {
result = "A";
} else if (score >= 80) {
result = "B";
} else {
result = "C";
}
[Switch case 구문]
1. switch case 문법 : 다중 선택을 위한 문법
- 다중 분기에 사용 cf) 다중 if else 구문은 처리 내용이 많을 경우 사용 -> switch case로 더 간단!
- 분기의 판단 기준은 조건식이 아닌 식의 값으로서 반드시 정수로 나타냄
- break와 default 문장은 생략 가능함
switch(정수식) {
case 값1;
문장1;
break; -> 문장1을 수행 후 아래 내용 모두 stop, break문 없을 경우 아래 내용까지 모두 수행함.
case 값2;
문장2;
break;
.
.
case 값n;
문장n;
break;
default; -> 처리되지 않은 case가 있으면 다음 문장 처리, 생략 가능
문장;
}
2. switch case 활용 사례
점수가 90점 이상일 경우 "A", 80점 이상일 경우 "B", 그 외의 경우 "C"
switch (score/10) {
case 10; -> 10이나 9나 시행해야 할 문장은 같음
case 9;
grade = "A";
break;
case 8;
grade = "B";
break;
default;
grade = "C";
}
- score/10 연산의 결과는 정수 -> 소수점 이하는 절삭 처리됨
- 첫 번째 case 문장에는 break문이 없으므로 두 번째 case 문장으로 무조건 내려오게 됨
public class Exam6_1 {
public static void main(String[] args) {
int score = 93;
if (score >= 90)
System.out.println("합격"); -> 합격(조건식이 false면 출력X, 아래 문장인 score만 출력됨)
System.out.println(score); -> 93 출력(조건식이 참이든 거짓이든 출력됨)
}
}
public class Exam6_2 {
public static void main(String[] args) {
int score = 93;
if (score >= 90) {
System.out.println("합격"); -> 합격
} else {
System.out.println("불합격"); -> 조건식이 거짓일 때만 출력됨
}
}
}
{ } : 한줄씩 이므로 생략이 가능함
public class Exam6_3 {
public static void main(String[] args) {
int score = 87;
if (score >= 90) {
System.out.println("A");
} else if (score >= 80) {
System.out.println("B"); -> B
} else {
Sysem.out.println("C");
}
}
}
public class Exam6_4 {
public static void main(String[] args) {
int score = 93;
switch (score / 10) {
case 10;
case 9;
System.out.println("A"); -> A
break;
case 8;
System.out.println("B");
break;
default;
Sysem.out.println("C"); -> case10, 9, 8 모두에 해당하지 않는 경우 C 출력
}
}
}
'프로그래밍 > 자바(java) 융합개발자 2차' 카테고리의 다른 글
[취성패] 자바 배우기 - 선수학습(배열-일차원, 이차원) (0) | 2020.12.12 |
---|---|
[취성패] 자바 배우기 - 선수학습(반복문-for, while구문) (0) | 2020.12.12 |
[취성패] 자바 배우기 - 선수학습(연산자II-증감, 대입, 비트논리, 비트시프트) (0) | 2020.12.12 |
[취성패] 자바 배우기 - 선수학습(연산자I-논리, 조건) (0) | 2020.12.12 |
[취성패] 자바 배우기 - 선수학습(연산자I-산술, 관계) (0) | 2020.12.11 |