728x90

0. 김영한님의 자바 강의 듣는 공부 일지

강의 주소 : 

 

[지금 무료] 김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음 | 김영한 - 인프런

김영한 | 프로그래밍에 처음 입문하는 분들을 위한 자바 강의입니다. 코드를 따라하면서 손쉽게 자바를 배울 수 있습니다., 국내 개발 분야 누적 수강생 1위, 제대로 만든 김영한의 자바 입문[사

www.inflearn.com


1. if문 1 - if , else

// if문 2개 사용
package cond; //패키지 선언

public class If1 { // 클래스 If1 시작
    public static void main(String[] args) { // main 메서드 시작
        int age = 20; // 사용자 나이

        if (age >= 18) {
            System.out.println("성인입니다.");
        }

        if (age < 18){
            System.out.println("미성년자입니다.");
        }
        

    } // main 메서드 끝
} // 클래스 If1 끝

---
성인입니다.
// else를 사용해서 if 1개만 사용하기
package cond; //패키지 선언

public class If2 { // 클래스 If2 시작
    public static void main(String[] args) { // main 메서드 시작
        int age = 20; //사용자 나이

        if (age >= 18) {
            System.out.println("성인입니다"); //참일때 실행
        } else {
            System.out.println("미성년자입니다"); // 만족하는 조건이 없을때 실행
        }
    } // main 메서드 끝
} // 클래스 If2 끝

---
성인입니다
// 불필요한 조건 검사 및 코드의 효율성이 떨어지는 예시
package cond; // 패키지 선언

public class If3 { // 클래스 If3 시작
    public static void main(String[] args) { // main 메서드 시작
        int age = 14; //사용자 나이

        if (age <= 7) {
            System.out.println("미취학");
        }

        if (age >= 8 && age <= 13) {
            System.out.println("초등햑생");
        }

        if (age >= 14 && age <= 16) {
            System.out.println("중학생");
        }

        if (age >= 17 && age <= 19) {
            System.out.println("고등학생");
        }

        if (age >= 8 && age <= 16) {
            System.out.println("성인");
        }
    } // main 매서드 끝
} // 클래스 If3 끝
---

2. if문 2 - else if

package cond; // 패키지 선언

public class If4 { // 클래스 If4 시작
    public static void main(String[] args) { // main 함수 시작
        int age =14;
        if(age <= 7){ // ~7: 미취학
            System.out.println("미취학");
        } else if (age <= 13) { // 8~13: 초등학생
            System.out.println("초등학생");
        } else if (age <= 16) { // 14~16: 중학생
            System.out.println("중학생");
        } else if (age <= 19) { // 17~19 : 고등학생
            System.out.println("고등학생");
        } else { // 20~ : 성인
            System.out.println("성인");
        }

    } // main 함수 끝
} // 클래스 If4 끝

---
중학생

3. if문 3 - if문과 else if문

  • if-else 사용 : 서로 연관된 조건이어서, 하나로 묶을때
  • if 각각 사용 : 독립조건일때
//독립조건일때, if문 각각 사용
package cond; // 패키지 선언

public class If5 { // 클래스 If5 시작
    public static void main(String[] args) { // main 메서드 시작
        int price = 10000;
        int age = 10;
        int discount = 0;

        if (price >= 10000) {
            discount = discount + 1000;
            System.out.println("10000원 이상 구매, 1000원 할인");
        }

        if (age <= 10) {
            discount = discount + 1000;
            System.out.println("어린이 1000원 할인");
        }
        System.out.println("총 할인 금액 :" + discount+ "원" ) ;
    } // main 메서드 끝
} // 클래스 If5 끝
---
10000원 이상 구매, 1000원 할인
어린이 1000원 할인
총 할인 금액 :2000원
//독립조건에서 else if를 사용하게 된다면
package cond; // 패키지 선언

public class If6 { // 클래스 If6 시작
    public static void main(String[] args) { // main 메서드 시작
        int price = 10000;
        int age = 10;
        int discount = 0;

        if (price >= 10000) {
            discount = discount + 1000;
            System.out.println("10000원 이상 구매, 1000원 할인");
        } else if (age <= 10) { //앞선 if에서 참이면 실행하지 않고 if문을 빠져나감
            discount = discount + 1000;
            System.out.println("어린이 1000원 할인");
        } else {
            System.out.println("할인없음");
        }
        System.out.println("총 할인 금액 :" + discount+ "원" ) ;
    } // main 메서드 끝
} // 클래스 If6 끝

---
10000원 이상 구매, 1000원 할인
총 할인 금액 :1000원

 


4. switch문

//우선 if문으로 풀어보기
package cond; // 패키지 선언

public class Switch1 { //클래스 Switch1 시작
    public static void main(String[] args) { // main 함수 시작
        //grade 1:1000 , 2:2000 ,  3:3000 , 나머지: 500
        int grade = 2;

        int coupon;
        if (grade == 1) {
            coupon = 1000;
        } else if (grade == 2) {
            coupon = 2000;
        } else if (grade == 3) {
            coupon = 3000;
        } else {
            coupon = 500;
        }
        System.out.println("발급받은 쿠폰: " + coupon);

    } // main 함수 끝
} // 클래스 Switch1 끝
---
발급받은 쿠폰: 2000
//Switch1을 Switch문으로 풀어보기
package cond; // 패키지 선언

public class Switch2 { // 클래스 Switch2 시작
    public static void main(String[] args) { // main 메서드 시작
        // grade 1:1000, 2:2000, 3:3000, 나머지:500
        int grade = 2;
        int coupon;

        switch (grade) {
            case  1:
                coupon = 1000;
                break;
            case 2:
                coupon = 2000;
                break;
            case 3:
                coupon = 3000;
                break;
            default:
                coupon = 500;
        }
        System.out.println( "발급받은 쿠폰 : " + coupon);

    } // main 메서드 끝
} // 클래스 Switch2 끝
//case에 break가 없을떄
package cond; //패키지 선언

public class Switch3 { // 클래스 Switch3 시작
    public static void main(String[] args) { // main 메서드 시작
        //grade 1:1000, 2:2000, 3:3000, 나머지:500
        int grade = 2;
        int coupon;
        switch (grade) {
            case 1:
                coupon = 1000;
                break;
            case 2:
            case 3:
                coupon = 3000;
                break;
            default:
                coupon = 500;
                break;
        }
        System.out.println("발급받은 쿠폰 : " + coupon);

    } // main 메서드 끝
} // 클래스 Switch3 끝

--- 
발급받은 쿠폰 : 3000

 

- 참고 : 자바14 새로운 Switch문

 


5. 삼항 연산자

  • 삼항 연산자(조건 연산자) : 참과 거짓에 따라서 특정 값을 구하는 경우 -> ?

(조건)? 참_표현식 : 거짓_표현식

package cond; // 패키지 선언

public class CondOp1 { // 클래스 CondOp1 시작
    public static void main(String[] args) { // main 메서드 시작
        int age = 18;
        String status;
        if (age <= 18) {
            status = "성인";
        } else {
            status = "미성년자";
        }

        System.out.println("age = " + age + " status = " + status);
    } // main 메서드 끝
} // 클래스 CondOp1 끝

---
age = 18 status = 성인
//삼항연산자 사용
package cond; // 패키지 선언

public class CondOp2 { // 클래스 CondOp2 시작
    public static void main(String[] args) { // main 메서드 시작
        int age = 18;
        String status = (age >= 18)? "성인" : "미성년자";
        System.out.println("age = " + age + " status = " + status);
    } // main 메서드 끝
} // 클래스 CondOp2 끝
---
age = 18 status = 성인

6. 문제풀이

package cond;

public class ScoreEx {
    public static void main(String[] args) {
        int score = 55;

        // 불필요한 조건...을 쓰지 않도록 하자
        if (score >= 90) {
            System.out.println("학점은 A입니다.");
        } else if (score < 90 && score >= 80) {
            System.out.println("학점은 B입니다.");
        } else if (score < 80 && score >= 70) {
            System.out.println("학점은 C입니다.");
        } else if (score < 70 && score >= 60) {
            System.out.println("학점은 D입니다.");
        } else if (score < 60) {
            System.out.println("학점은 F입니다.");
        }

        /*
        if (score >= 90) {
            System.out.println("학점은 A입니다.");
        } else if (score >= 80) {
            System.out.println("학점은 B입니다.");
        } else if (score >= 70) {
            System.out.println("학점은 C입니다.");
        } else if (score >= 60) {
            System.out.println("학점은 D입니다.");
        } else {
            System.out.println("학점은 F입니다.");
        }
        */

    }
}
package cond;

public class DistanceEx {
    public static void main(String[] args) {
        int distance = 150;

        if (distance <= 1) {
            System.out.println("도보");
        } else if (distance <= 10) {
            System.out.println("자전거");
        } else if (distance <= 100) {
            System.out.println("자동차");
        } else if (distance > 100) {
            System.out.println("비행기");
        }
    }
}
package cond;

public class ExchangeRate {
    public static void main(String[] args) {
        int dollar = 10;
        if (dollar < 0) {
            System.out.println("잘못된 금액입니다");
        } else if (dollar == 0){
            System.out.println("환전할 금액이 없습니다.");
        } else if (dollar > 0) {
            int result = dollar*1300;
            System.out.println("환전금액은 " + result + "원 입니다.");
        }
    }
}
package cond;

public class MovieRateEx {
    public static void main(String[] args) {
        double rating = 7.0;
        if(rating <= 9){
            System.out.println("어바웃타임을 추천합니다");
        }
        if(rating <= 8){
            System.out.println("토이스토리을 추천합니다");
        }
        if(rating <= 7){
            System.out.println("고질라을 추천합니다");
        }
    }
}
package cond;

public class GradeSwitchEx {
    public static void main(String[] args) {
        String grade = "G";
        switch (grade) {
            case "A":
                System.out.println(grade + ": 탁월한 성과입니다");
                break;
            case "B":
                System.out.println(grade + ": 좋은 성과입니다");
                break;
            case "C":
                System.out.println(grade + ": 준수한 성과입니다");
                break;
            case "D":
                System.out.println(grade + ": 향상이 필요합니다");
                break;
            case "F":
                System.out.println(grade + ": 불합격입니다");
                break;
            default:
                System.out.println(grade + ": 잘못된 학점입니다");
                break;
        }
    }
}
package cond;

public class CondOpEx {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;

        int result = (a > b)? a : b;
        System.out.println("result : " + result);
    }
}
package cond;

public class EvenOddEx {
    public static void main(String[] args) {
        int x = 3;
        String result = (x % 2 == 0) ? "짝수" : "홀수";
        System.out.println("출력: x =" + x +" , "+ result );
    }
}

 


7. 정리

 


<오늘의 단축키>

⭐ 한 줄 복사 (ctl + D)

⭐ psvm (public static void main)

⭐ sout (systemout.println)

 

 

728x90

'Computer Language > JAVA' 카테고리의 다른 글

[240614] Scope & Casting  (0) 2024.06.14
[240614] Loop  (1) 2024.06.14
[240610] Operator  (1) 2024.06.11
[240610] Variable  (1) 2024.06.10
[240608] Hello Java  (1) 2024.06.08

+ Recent posts