[Java] 제어문(조건문, 반복문,분기문)

2023. 12. 9. 16:27·Java

 

조건문 : 조건 만족할 때만 {} 수행  ( if, switch )

반복문 : 조건 만족하는 동안 {} 수행  ( for, while )

 

[ 조건문 ]

- 범위를 판단 할 경우 : if

- 같다를 판단 할 경우 : if, switch

 

1. if문

if(조건식){
    조건식이 true일 때 실행하는 코드
}

 

2.if-else문

if(조건식){
    조건식이 true일 때 실행하는 코드
}else {
    조건식이 false일 때 실행하는 코드
}

 

3.중첩 if문

if(조건식1) {
    조건식1 가 true 일 때 실행
}else if(조건식 2){
    조건식2 가 true 일 때 실행
}else {
    그 외 나머지 일 때 실행
}

 

4.switch문

switch(정수식 or 문자열) {
	case 값1:
		결과 값1일 시 수행될 문장;
	break;
	case 값2:
		결과 값2일 시 수행될 문장;
	break;
	default:
		일치 case 없을 시 수행될 문장;
}

*switch문 제약조건

1. switch문 조건식 결과  정수 or 문자열이어야 함

2. case값 정수 상수만 가능 중복x

int num, result;  
final int I=1;

switch(result){
    case '1':  //ok 문자
    case "AB":  //ok 문자열
    case I:  //ok 정수 상수
    case num:  //error 변수 불가
    case 1.0  //error 실수 불가
}

 

[ 반복문 ]

- 동일한 구문들을 여러번 해야 할 경우 사용

- 코드 진행을 상위로 되돌아 갈 수 있는 유일한 방법

- 반복 횟수 알 때 : for

- 반복 횟수 모를 때 : while

 

1. for문

for(초기화; 조건식; 증감식){
	조건식 true시 수행될 문장;
}

초기화→ 조건식 참일시→ 수행문자 → 증감식 → 조건식 (참,거짓) 

초기화→ 조건식 거짓일시→ for문 빠져나감

 

2. while문

while(조건식) {
	수행될 문장;
	[증감식 or 분기문];
	}

 

3.중첩 for문

for(초기값1; 조건식1; 증감식1) {
	수행될 문장1;
	for(초기값2; 조건식2; 증감식2) {
		수행될 문장2;
	}
	수행될 문장3;
}

 

3.do - while문

do {
	먼저 수행될 문장;
	[증감식 or 분기문];
} while(조건식);

[ 분기문 ]

1. break문

자신 포함한 하나의 반복문 벗어남

int sum = 0;
int i = 0;

while (true) {  //무한반복
    if(sum>23)
        break; //sum>23참일시 while문 빠져나감
    i++;
    sum+=i;
}

2. continue

반복문 내 사용, continue 만날시 밑부분 수행x 반복문 다시 실행

전체 반복 중 특정조건 시 건너뛸 때 유용

for(int i = 1; i <= 10 ; i++){
	if(i % 2 == 0)
    	continue; //i%2==0 참일시 밑부분수행x 다시 반복문으로
   System.out.println(i);
}

 

3.이름붙은 반복문

break;는 하나의 반복문 벗어남 그럼 중첩 반복문은 벗어나려면?

→반복문에 이름붙여 하나 이상의 반복문 벗어남

Loop1 : for(int i=0;i<10;i++) {
        for(int j=0;j<5;j++) {
            if(j==3)
                break Loop1; //만족시 Loop1{}빠져나감.
           or   break; //두번째 for{} 빠져나감
        }
}

 

'Java' 카테고리의 다른 글

[Java] 배열 비교, 출력, 복사, 정렬 (Arrays)  (0) 2023.12.09
[Java] String 배열  (0) 2023.12.09
[Java] 연산자  (0) 2023.12.08
[Java] 타입간 변환방법  (0) 2023.12.08
[Java] OverFlow & UnderFlow  (0) 2023.12.08
'Java' 카테고리의 다른 글
  • [Java] 배열 비교, 출력, 복사, 정렬 (Arrays)
  • [Java] String 배열
  • [Java] 연산자
  • [Java] 타입간 변환방법
Naah
Naah
  • Naah
    blueprint
    Naah
  • 전체
    오늘
    어제
    • 분류 전체보기 (106)
      • Java (28)
      • Kotlin (0)
      • TypeScript (7)
      • React (22)
      • Next.js (1)
      • Spring (22)
      • JPA (12)
      • Spring Data JPA (6)
      • Querydsl (1)
      • Error (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
    • manage
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Naah
[Java] 제어문(조건문, 반복문,분기문)
상단으로

티스토리툴바