JAVA 삼항연산자가 뭐예요?
🤔 삼항연산자란 과연 뭘까요?
저는 이름에서부터 항이 3개 있는 연산자라는 느낌이 강하게 듭니다.
아니나 다를까 세 개의 피연산자를 필요로 하는 연산자를 말한다고 정의가 적혀있습니다.(이것이 자바다 p100)
삼항연산자를 쓸 때 필요한 재료는 총 5가지입니다.
- ?(물음표)
- :(콜론)
- 피연산자1(조건식)
- 피연산자2(값 또는 연산식)
- 피연산자3(값 또는 연산식)
🙄 삼항연산자는 왜 필요할까요? 도대체 왜 쓰는걸까요?
제 생각에는 코드를 줄이려고 하는 노력에서부터 삼항연산자가 탄생한 것 같습니다.
저는 보통 글을 읽을 때 구구절절 긴 글 보다는 짧은 글을 더 선호합니다. 그리고 그런 글이 눈에 더 잘 들어옵니다. (그런데 제 글은 왜 이렇게 길어질까요..)
코드도 마찬가지이지 않을까 싶습니다. 긴 코드를 짧게 줄일 수 있다면, 줄여서 사용하는 것이 조금 더 효율적이지 않을까요?
👀 지금부터 같은 코드를 if문과 삼항연산자로 비교해보겠습니다.
public static void main(String[] args) {
int age = 20;
int cost = 0;
if (age <= 12) {
cost = 450;
} else if (age > 12 && age <= 18) {
cost = 720;
} else { // 성인은
cost = 1200; // 버스요금 1200원
}
System.out.println(age + "살에 내실 요금은 " + cost + "원 입니다");
}
↑위 코드↑는 연령에 따른 버스요금을 나타내주는 프로그램을 if문으로 표현한 것 입니다.
현재 연령은 20으로 적어놨기 때문에 버스비로 1200원을 지불해야합니다.
현재 해당 프로그램을 만들기 위해 10줄을 쓰는 노력이 필요했습니다.
그런데!! 이걸 단 3줄로 줄일 수 있는 방법이 있다면??? 어떨까요?
그런 획기적인 일을 삼항연산자가 해준다고 합니다.
public static void main(String[] args) {
int age = 20;
int cost = (age <= 12 ? 450 : (age > 18) ? 720 : 1200);
System.out.println(age + "살에 내실 요금은 " + cost + "원 입니다");
}
↑위↑가 삼항연산자로 줄인 코드입니다.
정말 간결해지지 않았나요?
삼항연산자는 보통 if문의 단축형태로 많이 쓰입니다.
한 줄에 간단한 내용을 넣어서 사용할 경우에는 if문보다는 삼항연산자가 조금 더 효율적이겠죠?
Author And Source
이 문제에 관하여(JAVA 삼항연산자가 뭐예요?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@riedel/JAVA-삼항연산자가-뭐예요저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)