Java

[Java] 생활코딩 | 조건문 if, else

kyra 2022. 9. 11. 13:49

https://youtu.be/bSVyiNyUeyc

조건문 IF

  • 조건문은 if로 시작한다. if 뒤의 괄호를 if절이라고 부르고, 중괄호{}가 감싸는 부분을 then절이라고 한다.
  • 조건문에서는 if절이 true일때 then절이 실행된다. if절이 false이면 then절이 실행되지 않는다.
package org.opentutorials.javatutorials.condition;
 
public class Condition1Demo {
 
    public static void main(String[] args) {
        if(true){
            System.out.println("result : true");
        }
    }
 
}

위의 코드는 result : true 를 출력한다. if절이 true이기 때문이다.

if(false){
    System.out.println("result : true");
}

위의 코드는 아무것도 출력하지 않는다. if절이 false이기 때문이다.

 

 

Else

  • if-else절은 if절의 값이 true면 then절이 실행되고, false일때는 else절이 실행된다.
public class HelloJava {
            public static void main(String args[]) {
                if(true) { //if 절의 값이 true이므로 1이 출력된다.
                    System.out.println(1);
                } else{
                    System.out.println(2);
                }
        }
    }
public class HelloJava {
            public static void main(String args[]) {
                if(false) { //if절의 값이 false이므로 2가 출력된다.
                    System.out.println(1);
                } else{
                    System.out.println(2);
                }
        }
    }

 

 

Else-if

  • else if 절은 복수 개를 사용할 수 있다.
  • 한번이라도 true값이 나오면 그 값을 출력하고, if문을 빠져나온다.
if(false){
    System.out.println(1);
} else if(false) {
    System.out.println(2);
} else if(true) {
    System.out.println(3); //if절이 true가 되므로 3 출력 후 if절을 빠져나온다.
} else {
    System.out.println(4);
}

 

Practice

  • 이름이 Kyra, 비밀번호가 220911이면 "Logged in"을 출력하고, 둘 중 하나라도 틀리면 "Wrong access"를 출력
public class HelloJava {
    public static void main(String[] args) {
        String name = "Kyra";
        int password = 220911;
        if ((name == "Kyra") && (password == 220911)){
            System.out.println("Logged in");
        } 
        else{
            System.out.println("Wrong access");
        }
    }
}

 

  • 점수에 따라 85점이 넘으면 아주 우수한 학생, 80점이 넘으면 우수한 학생, 80점 이하는 보통 학생임을 출력
import java.util.Scanner; //java의 Scanner라는 패키지 임포트
public class HelloJava {
    public static void main(String[] args) {
        Scanner stdin = new Scanner(System.in);
        System.out.println("성적을 입력하세요:");
        int score = stdin.nextInt();
        if(score >= 80) {
            if (score >= 85) {
                System.out.println("아주 우수한 학생입니다.");
            }
            else
                System.out.println("우수한 학생입니다."); //한 문장을 출력할 때는 {}없어도 된다.
        }
        else{
            System.out.println("보통 학생입니다.");
        }
    }
}
  • 해당 월을 입력하면 계절을 출력하는 코드
  • 3-5월은 봄, 6-8월은 여름, 9-11월은 가을, 12-2월은 겨울, 나머지는 해당 계절 없음 출력
import java.util.Scanner;
public class HelloJava {
    public static void main(String[] args) {
        Scanner stdin = new Scanner(System.in);
        System.out.println("몇 월인지 숫자로 입력하세요:");
        int season = stdin.nextInt();
        if (season >= 3 && season <= 5)
            System.out.println(season + "월은 봄입니다.");
        else if (season >= 6 && season <= 8)
            System.out.println(season + "월은 여름입니다.");
        else if (season >= 9 && season <= 11)
            System.out.println(season + "월은 가을입니다.");
        else if (season == 12 || (season >= 1 && season <= 2))
            System.out.println(season + "월은 겨울입니다.");
        else
            System.out.println("해당 계절이 없습니다.");
    }
}