A. 삼항 연산자란?
일반적인 연산자와 다르게 삼항 연산자는 앞에서 쓰는 조건문의 참과 거짓에 따라서 돌려주는 값이 다르다.
int a = 5;
a < 10 ? "a가 10보다 작습니다" : "a가 10보다 큽니다"
위 예제와 같이 (a < 10 ) 의 조건이 참일경우 a가 10보다 작다는 값이 나오고, 거짓일경우 뒤의 값인 a가 10보다 크다라는 값이 반환되게 됩니다.
B. break와 continue의 차이?
break? break는 반복문이나 스위치문을 빠져나간다.
while(true){
break; //break문을 사용하였으므로 while문을 빠져나가게 된다.
}
continue? continue는 break와 달리 빠져나가는게 아니라 반복or스위치문으로 제어를 이동시킨다.
while(true){
continue;
system.out.println("이곳이 호출이 될까?"); //이 부분은 위에 컨티뉴를 사용하였기 때문에,
//호출이 되지 않는다. continue문이 있기때문에 while로 다시 돌아가기 때문이다.
}
#위 사용법처럼 가장 가까운 반복문이나 스위치문을 빠져나가는 것과는 다르게, 원하는 반복문을 빠져나갈때에는 반복문에 라벨을 달아놓고 break와 continue문에 라벨을 추가로 써주면 그 반복문으로 이동 또는 빠져나가진다.
//break
a:for(int i = 0; i < 10; i++){ //a는 반복문의 라벨이다
while(true){
break a; //이 경우 가까운 while문을 빠져나가는게 아닌 a라는 라벨을 가진 반복문을 빠져나간다.
}
}
//continue
b:for(int i = 0; i < 10; i++){ //b는 반복문의 라벨이다
system.out.println("for문을 반복중입니다.");
while(true){
system.out.println("while문 반복중입니다");
continue b;
//컨티뉴를 사용하여 제어를 b라는 라벨이달린 for문으로 이동하였으므로 이 반복문의 출력값은 아래와 같다
// "for문을 반복중입니다"
// "while문 반복중입니다"
// "for문을 반복중입니다"
// ....
// 원래대로라면 while문을 빠져나가는 방법이 없는데 , 컨티뉴를 사용함으로써 for문으로 제어를 바꿀수 있다.
}
}
}
반응형
'Java > Java language' 카테고리의 다른 글
[JAVA]7. 가변인자 / static&인스턴스 메소드 / super & super() / final 예약어 (0) | 2021.08.13 |
---|---|
[JAVA]6. 배열? (0) | 2021.08.13 |
[JAVA]4. 자바 JDK와 식별자 (0) | 2021.08.13 |
[JAVA]3. 자바의 정규표현식? (0) | 2021.08.06 |
[JAVA]2. 자바의 특징(2) (0) | 2021.07.26 |
댓글