📗 3주차에 배울 내용
1. if, else
public class If1 {
public static void main(String[] args) {
int age = 20;
// if문은 조건문이다! 조건을 주어서 조건에 맞는 행동만 가능하게 한다!
if (age >= 18) {
System.out.println("성인입니다.");
} // 위의 if 문은 age가 18이상이면 이라는 조건에 참이기에 { } 안의 값으로 이동을 했지만
// 만약에 아니라면 { } 안으로 이동하지 않고 다음 문장으로 이동한다!!
if (age<18){
System.out.println("미성년자입니다");
}
}
}
public class If2 {
public static void main(String[] args) {
int age = 20;
// else는 if와 주로 같이 사용하는데 위에서 if문 if문 이렇게 사용하는것보다
// 아래와 같이 사용하는 경우가 일반적이다
if (age >= 18) {
System.out.println("성인입니다.");
} else {
System.out.println("미성년자입니다");
}
}
}
package cond.ex;
public class RatingEx {
public static void main(String[] args) {
double rating = 7.1;
// 이 경우 7 이상의 값이 모두 출력이 된다.
// 7.1 인경우 '고질라'는 출력되지 않고 위의 두개만 출력이된다.
if(rating <= 9){
System.out.println("'어바웃타임' 을 추천합니다.");
}
if (rating <= 8){
System.out.println("'토이 스토리'를 추천합니다.");
}
if (rating <=7) {
System.out.println("'고질라'를 추천합니다.");
}
}
}
주의 할점
if ( a > b ) System.out.println(" ");
// 이렇게해도 출력은 된다 단! 딱 한줄만 if문에 적용이 된다는거 유의하자
if ( a > b )
System.out.println(" a ");
System.out.println(" b ");
// 이렇게 된경우는 실질적으로 적용되는 것이 a쪽 출력문만 if문에 적용되어서 출력되고
// b의 출력문은 그냥 출력문으로써 출력이 된다. 밑에 코드 처럼 적용 된다고 보면 된다.
if ( a > b )
System.out.println(" a ");
System.out.println(" b ");
//이렇게 적용된것이다 if 문을 쓸때는 웬만해서는 { }를 꼭 사용하도록 하자
2. else if
public class If3 {
public static void main(String[] args) {
int age = 3;
if ( age <= 7) {
System.out.println("미취학");
}
if ( age >= 8 && age < 13 ) {
System.out.println("초등학생");
}
if (age >=14 && age<=16) {
System.out.println("중학생");
}
if (age >=7 && age<=19) {
System.out.println("고등학생");
}
if (age >=20) {
System.out.println("성인");
}
}
}
// 이렇게 해도 되기는 하지만 조건이 중복으로 적용이 되어 불필요한 다음 조건을 계속 검사하게 된다!!
// 예시로 위의 나이가 10이라고 하자 그러면 첫 if문에서 10 이상이라는것을 검사를 했는데 다음 if문에서
// 또 다시 검사를 하게 된것이다.!! 이러한 불필요한 검사를 없앤것이 else if 문이다.
public class If4 {
public static void main(String[] args) {
int age = 14;
if (age<=7) {
System.out.println("미취학");
} else if ( age <= 13) {
System.out.println("초등학생");
} else if (age <= 16) {
System.out.println("중학생");
} else if (age<=19) {
System.out.println("고등학생");
} else {
System.out.println("성인");
}
} // 이렇게 되면 중복 체크를 하지 않고 결과를 알 수 있게 된다
}
3. if 문과 else if 문
if 문과 else if문을 따로 쓰거나 같이 쓰거나 할때의 차이점이 있는데
할인에 대한 예시로 알아보자
먼저 원하는 조건은 만원이상 구매하면 천원 할인 10살 미만이면 1000원 할인
두 조건을 충족하게 하려면 어떻게 해야할까???
public class If6 {
public static void main(String[] args) {
int price = 10000;
int age = 10;
int discount = 0;
// 가격이 만원이상과 10살 이하의 사람에게 할인을 중복으로 적용하게 할려고 할때 이 경우에서는
// 중복으로 할인을 할 수 없다.
// 여러 조건이 있다고 항상 if-else로 묶어서 사용할수있는경우는 아니다
// 이 경우에는 위에서 가격이 만원이상으로 참이기에 할인을 1000원 적용하고 if문을 탈출했다.
if ( price >= 10000) {
discount = discount + 1000;
System.out.println("10000원 이상 구매, 1000원 할인");
} else if (age <= 10) {
discount += 1000;
System.out.println("어린이 1000원 할인"); //어린이 할인이 되지 않음
} else {
System.out.println("할인 없음");
}
System.out.println("총 할이 금액"+discount+"원");
}
}
public class If5 {
public static void main(String[] args) {
int price = 10000;
int age = 10;
int discount = 0;
//이렇게 if문을 두개로 만들어야 다른 조건도 충족하면서 원하는 결과값을 얻을 수 있다.
if ( price >= 10000) {
discount = discount + 1000;
System.out.println("10000원 이상 구매, 1000원 할인");
}
if (age <= 10) {
discount += 1000;
System.out.println("어린이 1000원 할인");
}
System.out.println("총 할이 금액"+discount+"원");
}
}
4. switch 문
public class Switch2 {
public static void main(String[] args) {
int grade = 1;
int coupon; // 스위치문은 case 뒤에 입력된 값으로 바로 간다
switch (grade){ // grade 에 들어간 값이 1
case 1: // case 1에 들어간다음 coupon에 1000을 넣고 break를 해서 스위치문 탈출
coupon = 1000;
break;
case 2:
coupon = 2000;
break;
case 3:
coupon = 3000;
break;
default:
coupon = 500;
}
System.out.println("발급받은 쿠폰" + coupon); // 탈출한뒤 출력됨
}
}
5. 삼항 연산자
항이 3개라서 삼항 연산자라고 한다. 사용방법은
//조건이//이면//참//거짓
int result = ( a > b ) ? 10 : 20
'끄적모음' 카테고리의 다른 글
요약 정리 - 자바 4 (0) | 2025.04.10 |
---|---|
요약 정리 - 자바 (0) | 2025.04.09 |
팀소개 웹페이지 제작중 (0) | 2025.04.08 |
요약 정리 - 자바 2 (0) | 2025.04.03 |
요약정리 - 자바 1 (0) | 2025.04.02 |