Java conditional statement

sycho·2023년 9월 22일
0

Java

목록 보기
7/18

본격적으로 제어문(control statement)에 대해 알아보도록 하자.

if, if-else, if-else if

  • C, C++이랑 크게 다른게 없다.
if (score >80) {
	System.out.println("You passed!");
}
  • condition 안의 값이 무조건 boolean type이어야 한다. C나 C++의 경우 정수형들도 가능한데 Java의 경우 이는 오류를 일으킨다.
if (x = 0) {System.out.println("hi.");} //error
  • {}은 블럭이라고 불린다. if문에서의 역할은 C, C++이랑 같다. 조건문 밑 body가 한 줄일 경우 생략이 가능한것도 동일하다. 생략시 밑의 한 줄만 조건문의 body로 취급하는 것도 동일하다.

  • if-else, if-else if는 C, C++이랑 크게 다른게 없다.

switch

  • 이것도 C, C++이랑 크게 다른게 없다.
int accountLevel = 1;
switch (accountLevel) {
	case 3:
    	grantDeletePermission(); //no break, continue switch statement
    case 2:
    	grantWritePermission();
    case 1:
    	grantReadPermission();
        break;
    default:
    	System.out.println("Undefined level");
}
  • C, C++은 case에 정수(및 char)만 넣는게 가능하지만 Java는 String도 넣는것이 가능하다. (JDK 1.7부터 허용)

  • 상수도 넣는게 가능하나, 변수는 불가능.

int a, b;
final int MY_CONST = 123;
final double MY_CONST2 = 123.4
switch(a) {
	case '1': //ok
    case MY_CONST: //ok
    case "HELLO": //ok
    case b: //error
    case 1.2: //error
    case false: //error
    case MY_CONST2: //error
}
  • case를 이어서 붙이는것도 가능하다.
switch(...) {
	case 1: case 2: case 3:
    	...
}
profile
안 흔하고 싶은 개발자. 관심 분야 : 임베디드/컴퓨터 시스템 및 아키텍처/웹/AI

0개의 댓글