(공감과 댓글 하나는 글쓴이에게 큰 힘이 됩니다.)

 

if문은 어떤 조건의 참, 거짓 여부를 판단하여 실행을 제어하는 구조이다. 참은 true, 거짓은 false로 표현한다.

 

■ if

- 조건식이 참인 경우에만 중괄호 내용을 실행 (내용이 한 줄인 경우에는 중괄호를 빼고 사용하기도 한다.)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        
        System.out.print("정수 입력 : ");
        int num = keyboard.nextInt();
        
        if(num > 0) {
            System.out.println(num + "은 자연수");
        }
        
        System.out.println("프로그램 종료");
    }
}
cs

Line 8 : 정수를 입력받아 변수 num에 저장

Line 10 : num의 값이 0보다 큰 경우, Line 11 실행 후 Line 14로 이동

 

■ if-else

-  조건식이 참인 경우 if의 중괄호 내용을 실행하고, 거짓인 경우 else의 중괄호 내용을 실행

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        
        System.out.print("정수 입력 : ");
        int num = keyboard.nextInt();
        
        if(num > 0) {
            System.out.println(num + "은 자연수");
        } else {
            System.out.println(num + "은 자연수가 아님");
        }
        
        System.out.println("프로그램 종료");
    }
}
cs

Line 8 : 정수를 입력받아 변수 num에 저장

Line 10 : num의 값이 0보다 큰 경우, Line 11 실행 후 Line 15로 이동

Line 12 : num의 값이 0보다 크지 않은 경우, Line 13 실행 후 Line 15로 이동

 

■ if-else if-else

- if의 조건식이 참인 경우 if의 중괄호 안의 내용을 실행하고, if의 조건식이 거짓이고 else if의 조건식이 참인 경우 else if의 중괄호 내용을 실행. 그 외에는 else의 중괄호 내용을 실행

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        
        System.out.print("정수 입력 : ");
        int num = keyboard.nextInt();
        
        if(num > 0) {
            System.out.println("양의 정수");
        } else if(num == 0) {
            System.out.println("0");
        }else {
            System.out.println("음의 정수");
        }
        
        System.out.println("프로그램 종료");
    }
}
cs

Line 8 : 정수를 입력받아 변수 num에 저장

Line 10 : num의 값이 0보다 큰 경우, Line 11 실행 후 Line 18로 이동

Line 12 : num의 값이 0인 경우, Line 13 실행 후 Line 18로 이동

Line 14 : num의 값이 0보다 작은 경우, Line 15 실행 후  Line 18로 이동

 

※ "if-if-if" vs "if-else if-else"

- 아래의 [코드 1]처럼 if문 3개를 사용하는 경우, 첫 번째 if문을 만족하더라도 아래의 if문을 계속해서 비교한다. 하지만, [코드 2]처럼 if-else if-else문을 사용하는 경우 하나의 조건문을 만족하면 다음의 조건문을 비교하지 않고 건너뛰기 때문에, 속도면에서 조금 더 유리하다.

 

[코드 1]

1
2
3
4
5
6
7
8
9
if(num > 0) {
    System.out.println("양의 정수");
}
if(num == 0) {
    System.out.println("0");
}
if(num < 0) {
    System.out.println("음의 정수");
}
cs

 

[코드 2]

1
2
3
4
5
6
7
if(num > 0) {
    System.out.println("양의 정수");
else if(num == 0) {
    System.out.println("0");
}else {
    System.out.println("음의 정수");
}
cs

'Java' 카테고리의 다른 글

자바(Java) while문  (0) 2020.06.26
자바(Java) switch-case문  (0) 2020.06.25
자바(Java) 연산자 우선순위  (0) 2020.06.24
자바(Java) 비트 연산자  (0) 2020.06.24
자바(Java) 연산자(Operator)  (0) 2020.06.23

+ Recent posts