Java/개념

Ch.4 조건문과 반복문

태감새 2022. 12. 6. 13:44

조건문과 반복문도 약간의 형태만 차이가 있지 근본적으로는 같다고 생각한다. 여기서도 처음보거나 낯선 표현만 정리해보겠다.

 


1. 조건식의 다양한 예시

여러 조건식이 존재하지만 예시들 중 처음보는 것들이다.

조건식 조건식이 참일 조건
'A' <= ch && ch <= 'Z' 문자 ch가 대문자인 경우
'A' <= ch && ch <= 'Z' 문자 ch가 소문자인 경우
'0' <= ch && cj <= '9' 문자 ch가 숫자인 경우
str.equals("yes") 문자열 str의 내용이 "yes"일 때 (대소문자 구분)
ste.equalsIgnoreCase("yes") 문자열 str의 내용이 "yes"일 때 (대소문자 구분X)

2. switch 문

switch (조건식){
    case 값1:
    	//조건식이 값1일 경우 실행 될 문장들
    	break;
    case 값2:
    	//조건식이 값2일 경우 실행 될 문장들
    	break;
    default:
    	// if문의 else역할. 조건과 일치하지 않으면 실행된다.
}

순서

- 조건식을 계산한다.

- 조건식과 일치하는 case로 이동한다.

- 이후 문장들을 실행한다.

- break를 만나거나 switch문이 끝나면 빠져나간다.

// 예시
switch(month){
    case 3:
    case 4:
    case 5:
    	System.out.println("현재의 계절은 봄입니다.");
    	break;
    case 6:
    case 7:
    case 8:
    	System.out.println("현재의 계절은 여름입니다.");
    	break;
    case 9:
    case 10:
    case 11:
    	System.out.println("현재의 계절은 가을입니다.");
    	break;
    default:
    	System.out.println("현재의 계절은 겨울입니다.");
}

2-1. switch 조건

- 조건식의 결과는 정수 또는 문자여야 한다.

- case문의 값은 정수, 상수, 문자, 문자열이여야만 한다.(변수 불가)

3. 임의의 변수 만들기

난수를 만들기 위해서는 Math.random()함수를 사용한다. 이 메서드는 0.0과 1.0사이의 범위의 double값을 반환한다. 

4. for문

- For문 조건식에 두 가지 변수를 넣을 수 있다. 증감식도 마찬가지 (단, 타입은 같아야 한다.)

ex. for (int i = 0, j = 1; i < 19; i++, j--)

- 배열의 반목문

파이썬의 배열의 요소를 가져오는 반복문을 자바에서도 사용이 가능하다.

for (배열타입 변수명:배열){
	실행 구문
}

//ex
String[] str = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};

for (String day:str){
System.out.println(day);
}

// String뿐만 아니라 다른 타입의 변수 배열도 위와같은 형태로 반복수행 가능

5. do-while문

do{
	//수행할 명령 입력
}while(조건식)

while문과 유사하지만 do-while문은 조건에 관계없이 무조건 한 번 실행된다는 특징이 있다. 

while : 조건 확인 -> 실행 여부

do-while : 실행 -> 조건 확인 -> 실행여부

즉, 형태 그대로 조건문이 밑에 있으므로 명령을 수행하고 조건을 확인한다고 생각하면 쉽다.

6. break문

break의 탈출 범위는 가장 가까운 반복문(for, while)이다. 이름이 지정된 반복문(7번)이 있으면 이름을 지정해서 탈출하는 방법도 있다.

break Loop1;
//Loop1 이라는 반복문을 탈출한다.

7. 이름이 지정된 반복문

반복문에 이름을 지정할 수 있다. 이름을 지정하면 break를 통해 중첩된 반복문을 한 번에 탈출할 수 있다.

Loop1 : for(...)
// Loop1 이라는 이름의 for문 형성

'Java > 개념' 카테고리의 다른 글

7장 문제풀이  (0) 2022.12.25
Ch5. 배열  (0) 2022.12.06
자바가 구동되는 방식  (0) 2022.12.06
Ch3. 연산자  (0) 2022.12.04
Ch2. 변수  (0) 2022.12.04