ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 조건문
    JAVA 2023. 12. 5. 16:59

    • 설정한 [조건식]이 true일 경우에만 설정한 [실행구문]을 수행하는 문장이다
      • 비교연산자와 논리연산이 반드시 등장함
      • 조건식이란 true또는 false를 리턴하는 [비교연산식]또는 [논리연산식]을 의미한다
    • 설정한 [조건식]이 true일 경우에만 설정한 [실행구문]만 실행하므로 [프로그램의 흐름]을 제어할수 있다.
    • 조건문 종류에는 if 문 , switch 문이 있다.

    if

    📌형식1

    if ~ else if ~ else 구문

    👉if 구문 1개 , else if 구문1개 이상 , else 구문 1개 가 차례로 나오는 형식

    if (조건식 1) {실행구문1;}
    
    else if (조건식 2) {실행구문2;}
    
    ~
    
    else if (조건식 n) {실행구문n;}
    
    else {실행구문 m;}
    1. 조건식n 이 true 면 실행구문x를 실행하고 바로 else 구문{~} 다음으로 진행
    2. 조건식n 이 모두 false면 무조건 실행구문m을 실행한다.
    3. 결국 실행구문 1~m중에 무조건 1개는 실행된다.

    📌형식2

    if else 구문 

    👉if 구문 1개 , else 구문1개 가 차례로 나오는 형식. 

    if (조건식1) {실행구문1;}
    
    ~
    
    else {실행구문m;}
    1. 조건식1이 true면 실행구문1을 실행하고 바로 else{~}구문 다음으로 진행한다.
    2. 조건식1이 false면 무조건 실행구문m을 실행한다.
    3. 결국 실행구문 1, m중에 무조건 1개는 실행된다.

    📌형식3

    if else if 구문  

    👉 if구문 1개, else if 구문 1개이상 이 차례로 나오는 형식이다. 
             마지막 else if 뒤에 else 구문이 없다.  

    if	(조건식1) {실행구문1;}
    	else if	(조건식2)	{실행구문2;}
    	~
    	else if	(조건식n)	{실행구문n;}
    1. 조건식n이 true면 실행구문 n을 실행하고 바로 마지막 else if(~){~} 구문 다음으로 진행한다.
    2. 조건식 n이 모두 false면 실행구문 1~n까지 모두 실행되지 않는다.
    3. 결국 실행구문 1~n중에 0~1개 실행된다.

    📌형식4

    if  구문  

    👉 if구문 1개만 나오는 형식이다. 

              if구문뒤에 else if 또는 else구문도 없다.

    if	(조건식1) {실행구문1;}
    1. 조건식 1이 true면 실행구문 1을 실행함
    2. 조건식 1이 false면 실행구문1 실행되지 않고 그냥 넘어감
    3. 결국 실행구문 1~n중에 0~1개 실행된다.

    switch

    • 원하는 변수에 원하는 데이터가 있으면 설정한 실행구문을 실행한다.
    • switch(변수)에서 변수의 자료형은 byte, short, int, char, String만 사용가능하다.
      • 원래 String형은 사용불가하나 자바ver.7부터 사용가능해졌음

    📌형식1

    switch (변수) {
    case 데이터1 : 실행구문1; [break;]
    case 데이터2 : 실행구문2; [break;] 
    ~ 
    case 데이터n : 실행구문n; [break;] //break는 조건문에서는.switch문에서만 나옴 
    defalut : 실행구문m; [break;] 
    }
    • switch 영역안에 case구문이 1개 이상, 마지막에 defalut 구문이 1개가 나오는 형식이다.
    • defalut는 if문의 else와 같다. > 데이터와 비교하지않고 바로 실행구문m 실행

    진행과정

    1. 변수안의 데이터가 데이터x와 동일하면 실행구문x를 실행
    2. 실행구문x 바로 다음에
      break가 있으면 ▷switch구문 탈출.
      break가 없으면 ▷다음 case구문의 데이터 x와 비교하지 않고 무조건 실행구문x를 실행
      break가 나올때 까지

    변수안의 데이터가 데이터1~데이터n과 모두 다르면 무조건 실행구문m을 실행한다.


    📌형식2

    switch (변수) {
    			case 데이터1 : 실행구문1; [break;]
    			case 데이터2 : 실행구문2; [break;]
    			~
    			case 데이터n : 실행구문n; [break;]
    		}
    • switch 영역안에 case구문이 1개 이상나옴,
      마지막에 defalut 구문이 없다
    • case만 반복되는 구문은 맨 마지막의 break가 의미없음 어차피 빠져나온다.
    • 변수 안의 데이터가 데이터1~데이터n 과 모두 다르면 실행구문은 1개도 실행 안된다.

    진행과정

    1. 변수 안의 데이터가 데이터x 과 동일하면 실행구문x 을 실행
    2. 실행구문x 바로 다음에
      break가 있으면 ▷switch구문 탈출.
      break가 없으면 ▷ 다음 case 구문의 데이터x 와 비교하지 않고 무조건 실행구문n 을 실행.
      break 가 나올때 까지
      다음 case 구문의 데이터x 와 비교하지 않고 계속 실행구문n 를 실행함.

    실행구문의 실행개수는 0~n개


    📌형식3

    switch (변수) {
    			case 데이터1 : 실행구문1; [break;]		<break의 의미가 없음
    		}
    • switch 영역안에 case구문이 1개만 나온다
      변수안의 데이터가 데이터1과 다르면 실행구문은 1개도 실행안됨
      결국 실행구문의 실행개수는 0~1개

    'JAVA' 카테고리의 다른 글

    클래스(Class)  (2) 2023.12.05
    반복문  (1) 2023.12.05
    연산자  (0) 2023.12.01
    변수(variable)  (2) 2023.11.30
    자바의 자료형 (참조형)  (0) 2023.11.30
Designed by Tistory.