Web develop/JAVA

[JAVA] 조건문, 반복문

ForA 2019. 4. 17. 21:52
728x90

조건문

: 조건에 따라 실행할 문장들을 제어하는 역할. 반드시 메소드 내에 기술해야 함

if문

if(조건식) //조건식 conditions : boolean 데이터
{   
    //조건식 결과가 참일때 실행할 문장
}

if()   
    System.out.printlln("hi")
    //실행문이 한개일경우 {}영역 괄호 생략가능

if ~ else문

if(조건식){
        조건식의 결과가 참일 때 실행할 문장;
} else {
        조건식의 결과가 거짓일 때 실행할 문장;
    }

if ~ else if ~ else문

: 서로 연결된 조건식을 표현할 때 사용, 필터링, 수의 범위표현

if(조건식1){    
  조건식1이 참일 때 실행할 문장;
  }else if(조건식2){
      조건식 1이 거짓이고 조건식2가 참일 때 실행할 문장;
          }else if(조건식3){
          조건식 2가 거짓이고 조건식3이 참일 때 실행할 문장
          }else{
                조건식 1,2,3이 거짓일 때 실행할 문장;     
          }
}
if(조건식1) {
    '아이디를 입력하지않았습니다'
} else if(조건식2) {
    '비밀번호를 입력하지않았습니다'
} else if(조건식3) {
    '전화번호를 입력하지않았습니다'
}

⇒ else if에서 조건식 1이 false고 조건식2가 true일 때 실행되기에 사용불가하다.이경우 else if로 잇는 대신 if문으로 나눠서 써준다

switch ~ case문 (다중택일 조건문)

Switch(수식) //수식의 데이터 값: 정수(byte,short,int,long), 문자(char) ,(+문자열/ JDK 7버전부터 가능)
{    
  case 비교데이터1:
           실행할 문장1;        
                 break;    
  case 비교데이터2:         
            실행할 문장2;        
            break;    
  case 비교데이터3:         
            실행할 문장3;        
            break;    
  default: //일치하는 case 값이 없을 때 실행할 문장을 표현        
            실행할 문장4;
}
  • 제어문 break

    • break를 감싸는 블럭을 벗어나는 역할. 깨트려서 탈출

    • switch블럭, 반복문 블럭 내에서 사용

    • 맨마지막 블럭에는 break를 넣어줄 필요가 없음

 


int year = 2019;
switch(year){
	default: System.out.println(year+"년 입니다");
    case 1995:  System.out.println("자바가 발표된 해입니다");
    case 2022:  System.out.println("월드컵이 개최되는 해입니다");
}// 출력-> default가 맨 마지막에 실행되며 세 개 다 출력됨.

반복문(loop)

for문

for(초기화1; 조건식2; 증감자3)
{    
    반복적으로 실행할 문장;4
}

-> 실행순서)  1 - 2(true) - 4 - 3 -
                 2 - 4 - 3 -
                 2 - 4 - 3 - 2(false)가 나오면 for문 탈출

for(int i=0; i<5; i++){
      System.out.println("*");
}
  • 일정횟수 반복할 때 , 규칙적인 수를 표현할 때 , 배열의 인덱스를 표현할 때 사용

while문

while(조건식){    
    //조건식 결과가 참인 동안 실행할 문장;
}
  • 조건이 참인동안 반복실행
  • 조건이 만족되지 않는다면 한번도 실행되지 않을 수 있고 조건이 만족한다면 무한히 실행할 수도 있음.
    ( while문의 실행횟수: 0~무한대 / if문의 실행횟수: 0 또는 1)
  • 반복되는 횟수가 일정하지 않을 때 사용
  • 서버의 리스너를 표현할 때 사용 ==> 무한 반복할 때
  • while(true){ }로 무한루프 할 경우 while 뒤에있는 실행문은 실행불가로 간주되어 에러발생

do~while문

do {    
    //반복실행할 문장
   } while(조건식);
  • while문과 차이점: 실행횟수(1~무한대) ==> 조건식의 결과와 상관없이 무조건 한번은 실행

제어문

break문

  • switch블럭 또는 loop블럭(for while, do~while)내에서 사용하며 해당 영역을 빠져나가는 역할.
  • 사용: break;

continue문

  • 반드시 loop 영역 내에서만 사용
  • loop영역의 끝괄호 역할.
  • 사용: continue;