본문 바로가기
JAVA

조건문 (if~else, switch)

by zkzk7290 2024. 9. 6.
반응형
조건문 : 프로그램의 흐름을 제어하는 데 사용 (if~else), switch문,
종류:
1. if, else, else if
2. switch, case, default
+) continue, break

 

 

if~else문을  사용한 예시

	
		int age = 10;
		
		if (age > 19) {
//			조건이 참일 때 실행될 코드
			System.out.println("성인입니다.");
		} else {
//			조건이 거짓일 때 실행될 코드
			System.out.println("미성년자입니다.");
		}

 

다른 방식으로 표현 

// cf) 실행될 코드 블록에 오는 코드가 하나의 구문이면 {} 생략 가능
		if (age > 19) System.out.println("성인");
		else if (age > 13) System.out.println("청소년");
		else System.out.println("어린이");

 

문제

== 조건문 예제 ==
 : 함수 위치 구하기 문제 
1. 스캐너를 사용하여 x, y 변수에 데이터를 저장
2. (x, y) 좌표가 1, 2, 3, 4 사분기 중 어느 위치에 있는지 검사 
>> 조건문 // 각 분기의 위치일 경우 functionScope 변수에 몇 사분면인지 할당
EX) functionScope = "제1사분면"
조건문 이행 완료 시 
"결과: " + functionScope 출력

 

풀이 -> 바로 풀이 보지 마세요 !!

	각 조건식에서 저장할 문자열값(사분면의 위치)을 담을 변수 선언
		String functionScope = null; 
		
		// 스캐너 생성
		Scanner sc = new Scanner(System.in);
		System.out.print("x: ");
		int x = sc.nextInt();
		
		System.out.print("y: ");
		int y = sc.nextInt();
		
		// 조건문 작성
		if (x > 0 && y > 0) functionScope = "제1사분면";
		else if (x < 0 && y > 0) functionScope = "제2사분면";
		else if (x < 0 && y < 0) functionScope = "제3사분면";
		else functionScope = "제4사분면";
		
		System.out.println("결과: " + functionScope);
		
		sc.close();

sc.close()  = 메모리 의 낭비를 줄이기 위해서 

 


switch문 : 특정 변수의 값에 따라 실행할 코드 블록의 범위를 결정 
비교할 변수와 case값을 비교하여 같은 값일 경우 해당 블록부터 끝까지 실행
break 키워드에서 switch문이 종료
-break가 없으면 다른 Case문이 실행된다.
그래서 case문을 넣어줘야 그 조건에 맞는 결과만 도출 가능하다 .
해당하는 case가 없을 경우에는 default 문이 실행

 

예시 

	Scanner sc = new Scanner(System.in);// 입력 받기 위해서 
		
		System.out.println("Chapter를 선택하세요.");
		int chapter = sc.nextInt();
		
		switch(chapter) {
		case 1:
			System.out.println("자바 기본 문법");
			break;
		case 2:
			System.out.println("자바 제어문 - 조건문/반복문");
			break;
		case 3:
			System.out.println("자바 배열");
			break;
		default:
//			default문은 case 조건식이 끝난 뒤 작성
//			: 어느 case에도 일치하지 않을 경우
			System.out.println("범위 초과");
		}
		
		sc.close();		
	}
}

 

반응형

'JAVA' 카테고리의 다른 글

OOP 객체 지향 프로그램  (1) 2024.09.20
오버 로딩 ,오버 라이딩  (1) 2024.09.09
반복문  (0) 2024.09.06
연산자 (Operation)  (0) 2024.09.04
JAVA - 변수 선언 및 데이터 타입  (0) 2024.09.04