본문 바로가기
Back/JAVA

제어문 - if~else문

by 시월해 2021. 2. 25.

* if~else문 - 조건문
- 조건식이 이면 조건식이 참인 경우 실행문을 실행을 하고 if~else문을 빠져 나옴.
- 조건식이 거짓이면 조건식이 거짓인 경우 실행문을 실행을 하고 if~else문을 빠져 나옴.
   형식) if(조건식) {
            조건식이 참인 경우 실행문.
        } else {
            조건식이 거짓인 경우 실행문.
        }

 


예제1) 입력 받은 수가 50이상인 경우와 50이하인 경우의 if~else문을 작성해보자.

	public static void main(String[] args) {
		
		int su = Integer.parseInt(JOptionPane.showInputDialog("정수를 입력하세요."));
		
		if(su >= 50) {
			// 조건식이 참인 겨우 실행문
			System.out.println("입력 받은 수는 50 이상의 숫자입니다.");
		} else {
			// 조건식이 거짓인 경우 실행문
			System.out.println("입력 받은 수는 50 미만의 숫자입니다.");
		}

	}

소스
60을 입력했을 때
결과
22를 입력했을 때
결과


예제2) 문자열 비교에는 .equals()메소드 사용.

	public static void main(String[] args) {
		
		System.out.println("1. 아침에 일찍 일어납니다.");
		System.out.println("2. 세수를 합니다.");

		String breakfast = args[0];
		
		// 문자열끼리 비교할때는 equals() 메서드 사용. 같으면 참, 틀리면 거짓 반환
		if(breakfast.equals("밥")) {
			System.out.println("3. 밥을 먹습니다.");
		} else {
			System.out.println("3. 빵을 먹습니다.");
		}
		
		System.out.println("4. 국기 수업을 받으러 학원에 갑니다.");
	}

소스
밥을 입력한다
결과에 밥을 먹는다고 나온다.
빵을 입력한다.
결과에 빵을 먹는다고 나온다.


예제3) 키보드로 입력 받은 정수값을 5로 나누어서 0으로 떨어지면 "이 값은 5로 나누어집니다."라고 출력을 하고, 그렇지 않으면 "이 값은 5로 나누어지지 않습니다."라고 화면에 출력.
단, 음수값이 입력이 되면 "음수 값이 입력되었습니다." 라고 출력.

	public static void main(String[] args) {
		
		int su = Integer.parseInt(JOptionPane.showInputDialog("정수를 입력하세요."));
		
		if(su < 0) { // 음수인 경우
			
			System.out.println(su + " 음수 값이 입력되었습니다.");
			
		} else { // 양수인 경우
			
			if(su % 5 == 0) {
				System.out.println(su + "(은)는 5로 나누어집니다.");
			} else {
				System.out.println(su + "(은)는 5로 나누어지지 않습니다.");
			}
			
		}
		

	}

가장 먼저 입력 값이 음수 값인지 양수 값인지 판단한 후에 연산에 들어간다.
음수를 입력한 결과
양수(5의 배수)를 입력한 결과
양수(5의 배수가 아닌 수)를 입력한 결과


예제4) 키보드로 두 수를 입력 받아서 두 수의 차이를 화면에 출력.

	public static void main(String[] args) {
		
		// 1. 키보드로부터 두 수를 입력받는다.
		int su1 = Integer.parseInt(JOptionPane.showInputDialog("첫 번째 수를 입력하세요."));
		int su2 = Integer.parseInt(JOptionPane.showInputDialog("두 번째 수를 입력하세요."));

		int dist; // 거리값 변수
		
		if(su1 > su2) {
			dist = su1 - su2;
		} else {
			dist = su2 - su1;
		}
		
		System.out.println("두 수의 차이는 " + dist + "입니다.");
				

	}

만약 두 번째로 입력한 수가 더 클 경우 두 수의 차이가 음수가 되므로, 두 수를 비교한 뒤에 연산을 실행한다.
결과값