4-1)
조건문
특정 조건에 따라 다른 코드를 실행하는 문장
조건문을 만족하면 블럭 안 문장이 실행되고 아닌 경우 else가 실행되거나 else문이 없는 경우 다음 문장으로 넘어간다.
4-2)
else-if문
여러가지 케이스가 존재하는 경우 사용된다.
if문의 나열을 통해서도 케이스를 검사할 수 있지만 그럴 경우 코드가 불필요하게 길어지고 앞에서 검사한 부분을 뒤에서 다시 검사하게 되는 상황이 발생하게 된다.
이 상황에서 결과를 중복 확인하는 상황을 피하기 위해 else if문 사용.
else문은 있어되 되고 없어도 된다.
4-3)
if문과 if-else문
if(조건)
...
if(조건)
각각의 조건을 서로에게 영향을 받지 않고 검사하는 경우
if(조건)
...
else(조건)
각각의 조건을 검사하되 공통되는 부분의 검사는 한번만 검사하는 경우
요구되는 상황에 따라 묶어사 사용하거나 if문으로 풀어서 사용하거나 선택해서 사용한다.
블럭 안 문장이 하나인 경우 중괄호를 생략 가능하다,
만들여쓰기를 하였더라도 중괄호를 사용하지 않고 두개 이상의 문장을 사용했을 경우에는 if문 밖의 문장으로 해석되기 때문에 웬만하면 중괄호를 사용해주도록 한다.
4-4)
switch문
if문을 좀 더 쉽게 사용할 수 있게 된다.
break문이 없으면 케이스가 맞는 경우 뒤에서의 케이스도 맞다고 판단해 뒷 케이스까지 실행되지만 브레이크문이 존재하면 해당 케이스 실행 후 스위치 문을 빠져 나간다.
브레이크 문이 있다면 count의 값은 1000이지만 브레이크가 없다면 디폴트까지 실행되어 count는 500이 된다.
case3에서 브레이크가 있는경우 case 1, 2, 3실행 후 디폴트 문장 실행 전 스위치 문 탈출.
스위치문에서의 조건식은 단순 값만 넣을 수 있는 반면 if문에서의 조건식은 보다 자유롭게 작성 가능함을 확인 할 수있다. 따라서 값에 따라 식을 사용하는 경우에는 switch문을 사용하면 보다 간결하게 작성 가능하고 아닌 경우에는 if문을 사용하여 문제를 해결해주면 된다.
기존 switch와 다른 새로운 switch문
기존 스위치문보다 훨씬 간결하게 작성 가능하다
4-5)
삼항 연산자
항이 세개인 경우
두 코드는 같은 연산을 수행한다. 삼항연산자를 사용하면 코드를 훨씬 간결하게 작성 가능함을 확인 가능하다.
변수=(조건)? 조건이 참일 경우 변수에 들어갈 값 : 거짓일 경우
문제 1)
package cond;
public class condEx1 {
public static void main(String[] args) {
int score=90;//점수 값 입력
char grade;
if(score>=90)
grade='A';
else if(score>=80)
grade='B';
else if (score>=70)
grade='C';
else if(score>60)
grade='D';
else{
grade='F';}
System.out.println(grade);
}
}
문제 2)
평점에 따른 영화 추천
package cond;
public class condEx2 {
public static void main(String[] args) {
double rating=7.1;//평점 입력
if(rating>=9){
System.out.println("어바웃 타임");
}
else if(rating>=8){
System.out.println("토이 스토리");
} else if (rating>=7) {
System.out.println("고질라");
}
}
}
학점에 따른 성취도 출력
package cond;
public class condEx1 {
public static void main(String[] args) {
char grade='A';
switch (grade){
case'A'->System.out.println("탁월한 성과");
case'B'->System.out.println("좋은 성과");
case 'C'->System.out.println("준수한 성과");
case 'D'->System.out.println("향상 필요");
default->System.out.println("불합격");
}
}
}
'java 스터디' 카테고리의 다른 글
java스터디 6주차 (0) | 2024.05.24 |
---|---|
java 5주차 (0) | 2024.05.17 |
java 스터디 3주차 (0) | 2024.05.04 |
java 스터디 2주차 (0) | 2024.04.13 |
java 스터디 1주차 (1) | 2024.04.06 |