Java 조건문

J·2022년 7월 25일
0

Java

목록 보기
9/11
post-thumbnail

조건문

조건문: 주어진 조건에 따라서 애플리케이션을 다르게 동작하도록 하는 프로그램의 핵심이다.
Boolen은 조건문에서는 Boolen값을 기준으로 실행 흐름을 제어한다.

if

if절이 true일 때 → then절 실행
if절이 false일 때 → else if절로 넘어간다.

else if절은 여러개를 입력할 수 있다.
else절은 생략할 수 있다.

public class Condition1Demo {
 
    public static void main(String[] args) {
        if(true){
            System.out.println("result : true"); // result : true가 출력된다.
        }
    }
 
}
public class Condition2Demo {
 
    public static void main(String[] args) {
        if (true) {
            System.out.println(1); //1만 출력된다.
            System.out.println(2);
            System.out.println(3);
            System.out.println(4);
        }
        System.out.println(5);
    }
 
}

조건이 true일 때 if 절의 중괄호 내에서 1가지 값만 출력된다.

else

if(false){
    System.out.println(1);
    System.out.println(2);
    System.out.println(3);
    System.out.println(4);
}
System.out.println(5); //5가 출력된다.

조건문을 false로 두면 괄호 밖으로 나와 else문(생략)이 출력된다.

else if

if절의 값이 true면 then절이 실행된다.
false라면 else if절의 then이 실행된다.
else if절이 false라면 then절이 실행된다.

if(false){
   System.out.println(1);
} else if(false) {
   System.out.println(2);
} else if(true) {
   System.out.println(3); /// 3이 출력된다.
} else {
   System.out.println(4);
}
if(false){
   System.out.println(1);
} else if(false) {
   System.out.println(2);
} else if(false) {
   System.out.println(3);
} else {
   System.out.println(4); //4가 출력된다.
}

조건문의 이용: 변수와 비교연산자 그리고 조건문

ID 값으로 egoing 입력하기

이클립스에서 [Run Configuration]-[argument]에서 egoing을 입력하여 ID가 일치하는지 확인했다.

public class LoginDemo {
   public static void main(String[] args) {
       String id = args[0];
       if(id.equals("egoing")){
           System.out.println("right"); // right가 출력된다.
       } else {
           System.out.println("wrong");
       }
   }
}

조건문의 중첩

package org.opentutorials.javatutorials.condition;

public class LoginDemo2 {
   public static void main(String[] args) {
       String id = args[0]; // egoing
       String password = args[1]; //111111
       if (id.equals("egoing")) {
           if (password.equals("111111")) {
               System.out.println("right");
           } else {
               System.out.println("wrong");
           }

       } else {
           System.out.println("wrong");
       }
   }
}

args[0]: id라는 변수에 egoing값이 입력 됐다.
args[1]: password 변수에 111111값이 입력 됐다.

if문 안에 if문을 또 넣어서 복잡한 조건문을 만들 수 있다.

1개의 if문으로 연관된 로직들을 응집할 수 있다.

switch문

switch문: switch문 내에서 값이 일치하는 조건(case)의 값 이하가 모두 실행된다.
사용 빈도는 적지만 로직을 명료하게 보여주는 시각적 장점이 있기 때문에 비교할 조건들이 많으면 if문 보다 편리하여 사용한다.

switch문에서 사용 가능한 데이터 타입: byte, short, char, int, enum, String, Character, Byte, Short, Integer

 public static void main(String[] args) {
         
        System.out.println("switch(1)");
        switch(1){
        case 1:
            System.out.println("one");
        case 2: 
            System.out.println("two");
        case 3: 
            System.out.println("three"); //1이하의 값으로 one two three가 출력 된다.
        }
  System.out.println("switch(2)");
        switch(2){
        case 1:
            System.out.println("one");
        case 2:
            System.out.println("two");
        case 3:
            System.out.println("three"); // two와 three가 출력된다.
        }
 System.out.println("switch(2)");
        switch(2){
        case 1:
            System.out.println("one");
            break;
        case 2:
            System.out.println("two"); 
            break; /two만 출력 된다.
        case 3:
            System.out.println("three");
            break;
        }

break: break문을 만나면 조건이 종료된다.

 System.out.println("switch(4)");
        switch(4){
        case 1:
            System.out.println("one");
            break;
        case 2:
            System.out.println("two");
            break;
        case 3:
            System.out.println("three");
            break;
        default:
            System.out.println("default");
            break; // default가 출력 된다.
        }
 
    }
 
}

default: switch문에서 내가 부여한 조건 값이 case문에 어디에도 속하지 않으면, default문이 정의되었다면 default문이 실행된다.

0개의 댓글