JAVA 제어문 - 조건문

황찬호·2021년 4월 7일
0

Java1

목록 보기
11/14

조건문 형식

조건문 if는 결과 값이 true 면 해당 if문을 출력하고 false 면 다음 if문으로 넘어간다.
else if문을 통해 이중 조건문을 걸 수 있다.

public class IfApp {
 
    public static void main(String[] args) {
 
        System.out.println("a");
        if(false) {
            System.out.println(1);
        } else if(true) {
            System.out.println(2);
        } else {
            System.out.println(3);
        }
        System.out.println("b");
 
    }
 
}

조건문 응용

id의 값과 inputId의 값이 일치하면 "Master!"가 출력되고 일치하지 않으면 "Who are you?"가 출력되게 해보았다.

미리 Run configurations > Arguments 에서 egoing을 작성해두었다.

비교연산자 == 를 통해 비교하려했더니 문자열은 == 를 통해 비교할 수 없다.(내용이 같더라도 출력값은 false이다.)

그래서 문자열 비교는 equals 메소드를 이용해야 한다.

  • equals라는 메소드는 서로의 변수 내용이 동일하냐에 따라 ture 또는 false를 출력한다.
public class AuthApp {
 
    public static void main(String[] args) {
         
        String id = "egoing";
        String inputId = args[0];
         
        System.out.println("Hi.");
         
        //if(inputId == id) {
        if(inputId.equals(id)) {
            System.out.println("Master!");
        } else {
            System.out.println("Who are you?");
        }
 
    }
 
}

조건문 응용2

이번에는 id와 password 가 일치해야 "Master!"가 출력되게 해보았다.

if(inputId.equals(id))	{
if(inputPass.equals(pass)) {
	System.out.println("Master!");
} else {
	System.out.println("Wrong password");
	}
} else {
	System.out.println("Who are you?");

이렇게 이중 if문으로 할 수도 있지만 아래처럼 좀 더 단순하게 논리연산자 && 을 이용해서 만들 수도 있다.


public class AuthApp {

	public static void main(String[] args) {
		
		String id = "egoing";
		String inputId = args[0];
		
		String pass = "1111";
		String inputPass = args[1];
		
		System.out.println("Hi.");
		
		if(inputId.equals(id) && inputPass.equals(pass))	{
			System.out.println("Master!");
		} else {
			System.out.println("Who are you?");
		}

	}

}
profile
되는대까지 해보기

0개의 댓글