본문 바로가기
공부/java

자바(java)의 조건문(1)

by 샤샤샤샤 2023. 1. 23.

조건문

if문,  switch문

프로그램을 짤때 핵심이 되는 문장 구조

true/ false 조건에 따라 선택적 실행이 가능하다.

 

if문

형식 (패턴) : if (조건절) { 조건절이 true일때 실행되는 수행문 }

하나의 영역(scope), 블럭(block)은 중괄호로 나타낸다.

반드시 들여쓰기(4칸) 사용.

 

public class ex31 {
    public static void main(String[] args) {
        //조건문 if문 switch문
        //조건문 : true/false 조건에 따라서 선택적인 실행을 할수있음.

        // 형식(패턴)
        // if ( 조건절-비교,논리연산자로 이루어진 절 ) {
        //    조건절이 true일 수행되는 수행문1
        //    수행문2..
        // }
        int i = 20;
        if( i == 10 ) {
            System.out.println( "i가 10임" );
        }
        System.out.println( "조건문 종료!" );

        //영역(Scope) 블록(Block)을 중괄호로 표현한다.
        //블록를 사용할 때는 꼭 들여쓰기/내어쓰기(4칸)를 한다.
        //왜냐면 가독성이 좋아지므로. ==> 소프트웨어 품질과 직접 연결!
        if( i == 10 ) {
            System.out.println("i는 10임");
            System.out.println("i는 10임");
            if( i == 20 ){
                System.out.println("i는 20임");
            }
        }

        //변수이름 짓기 : 가독성을 고려하여
        // 바로 이행할 수 있는 이름으로 지으면 좋다!
        // 변수 이름 : 고객에게 줄 포인트
        int p = 1000; // p : price person point ???
        int point = 1000;
        int pointOnCustomer = 1000;

    }
}

if문에는 크게 4가지 패턴이 존재한다.

 

1. 단일 if문: if만 사용되는 조건문이다. 조건절이 true일때만 수행되고 false 일때는 if문을 빠져나간다.

        if (10 <5) {
            System.out.println( "조건절이 true값이면 나오는 문구");
        }
        System.out.println("조건문 끝");          출력값 : 조건문 끝

 

2. if else 문: 조건절이 참/ 거짓일때 각각 실행문이 존재하는 조건문

 

        if( 10 > 20 ) {
            System.out.println("참");
        } else {
            System.out.println("거짓");
        }
  출력값 : 거짓

 

3. if else if 문 : 조건에 만족하지 못할때, 새로운 조건을 추가할 수 있는 if문.

                        조건에 따라 수행문도 여렇개 넣을 수 있다.

if( i < 10 ){
            System.out.println("10보다 작음");
        }else if( i < 20 ){
            System.out.println("10보다 작지 않고 20보다 작음");
        }else{
            System.out.println("10보다 작지 않고 20보다 작지 않음");
        }

 

4. if문 안에 if문 : 조건을 중첩할수 있다.

        if( i % 2 == 0 ) {
            if( i % 5 == 0 ) {
                System.out.println("2의 배수이고 5의 배수임");
            }else{
                System.out.println("2의 배수이고 5의 배수는 아님");
            }
        }

 

조건문은 중괄호나 형식상의 사소한 실수로 오류가 일어날 수도 있다.

또한 헷갈리기 쉬우니 주의 깊게 작성하도록 하자.

public class ex31 {
    public static void main(String[] args) {
        //조건문 if문 switch문
        //조건문 : true/false 조건에 따라서 선택적인 실행을 할수있음.

        // 형식(패턴)
        // if ( 조건절-비교,논리연산자로 이루어진 절 ) {
        //    조건절이 true일 수행되는 수행문1
        //    수행문2..
        // }
        int i = 20;
        if( i == 10 ) {
            System.out.println( "i가 10임" );
        }
        System.out.println( "조건문 종료!" );

        //영역(Scope) 블록(Block)을 중괄호로 표현한다.
        //블록를 사용할 때는 꼭 들여쓰기/내어쓰기(4칸)를 한다.
        //왜냐면 가독성이 좋아지므로. ==> 소프트웨어 품질과 직접 연결!
        if( i == 10 ) {
            System.out.println("i는 10임");
            System.out.println("i는 10임");
            if( i == 20 ){
                System.out.println("i는 20임");
            }
        }

        //변수이름 짓기 : 가독성을 고려하여
        // 바로 이행할 수 있는 이름으로 지으면 좋다!
        // 변수 이름 : 고객에게 줄 포인트
        int p = 1000; // p : price person point ???
        int point = 1000;
        int pointOnCustomer = 1000;

    }
}
public class ex32 {
    public static void main(String[] args) {
        //if문의 4가지 형식(패턴)

        //단일 if문
        // if( 조건절 ) {
        //   true일때의 수행문
        // }
        int i = 10;
        if( i == 10 ) {
            System.out.println( "i가 10임" );
        }

        //if else문
        // if( 조건절 ) {
        //   true일때의 수행문
        // } else {
        //   false일때의 수행문
        // }
        if( i > 20 ) {
            System.out.println("i가 20보다 큼");
        } else {
            System.out.println("i가 20보다 같거나 작음");
        }

        //if else if문
        // if( 조건절1 ) {
        //    수행문1 - 조건절1이 true일때
        // } else if( 조건절2 ) {
        //    수행문2 - 조건절1이 false이고 조건절2가 true일때
        // } else {
        //    수행문3 - 조건절1이 false이고 조건절2가 false일때
        // }
        if( i < 10 ){
            System.out.println("10보다 작음");
        }else if( i < 20 ){
            System.out.println("10보다 작지 않고 20보다 작음");
        }else{
            System.out.println("10보다 작지 않고 20보다 작지 않음");
        }

        //중첩 if문 - if문 안에 if문
        // if( 조건절1 ) {
        //    if( 조건절2 ) {
        //       수행문1 - True이고 True일때
        //    }else{
        //       수행문2 - True이고 False일때
        //    }
        // }
        if( i%2 == 0 ) {
            if( i%5 == 0 ) {
                System.out.println("2의 배수이고 5의 배수임");
            }else{
                System.out.println("2의 배수이고 5의 배수는 아님");
            }
        }
    }
}

조건문의 형식은 약간의 차이만 있을뿐, 거의 모든 언어에서 비슷하게 사용된다. 잘 기억해두자.

'공부 > java' 카테고리의 다른 글

자바(java)의 반복문: for, while  (1) 2023.01.23
자바(java)의 난수(랜덤수) 출력  (0) 2023.01.23
자바(java)의 연산(1)  (0) 2023.01.23
자바(java)의 버퍼 메모리  (0) 2023.01.23
자바 데이터 타입 변환(형변환)  (0) 2023.01.22