본문 바로가기
BE/Java

삼항 연산자

by 이건 뭐야 2024. 3. 13.

최근 코딩테스트 연습을 다시 시작하면서 프로그래머스에서 문제를 풀면서 깃허브에 기록을 같이 올렸었다.

 

이전에 문제 푼 것들을 다시 리뷰하면서 if문을 너무 많이 쓰면서 코드가 복잡해지는 것을 보고 간단하게 나타낼 수 있는 코드는 삼항 연산자를 써도 나쁘지 않을 것 같다는 생각이 들어서 공부하면서 사용해 봤다!

 

 

내 주관적인 생각으로는!

모든 코드에서 삼항 연산자를 쓰는 것은 한눈에 알아보기 쉽지 않기 때문에(가독성이 떨어짐) 가벼운 로직들을 처리할 때만 사용하는 것이 좋다.

 

 

삼항 연산자 문법

(조건문) ? 참일 때 값 : 거짓일 때 값

 

 

이렇게만 말로만 보면 이해하기가 어려우니 예시를 통해 알아보자

 

//예시
int result = number < 5 ? 0 : 1;


//풀이
number가 5보다 작을 경우 result는 0의 값을 갖고, 그렇지 않을 경우 result는 1의 값을 갖는다.

 

 

 

내가 프로그래머스 문제를 풀면서 실수를 한 것이 있었다.

 

 

바로 boolean 값을 받는 문제였는데...

boolean apple;

//적은 답
int number = apple == true ? 1 : 0;


//간단 답
int number = apple ? 1 : 0;

결과적으로 틀린 답은 아니었다!

하지만 boolean이 튀어나와서 그런지, 순간 apple에다가 조건문을 줘야 되는구나!라고 생각하고 apple이 true일 때를 넣어버렸다. (apple은 어차피 boolean 값이라 true or false밖에 없는데...)

 

그래도 지금 배웠으니 오히려 다행이라고 생각했다.😅

 

'BE > Java' 카테고리의 다른 글

Math 클래스 메소드  (3) 2024.05.02
정수 오버플로우(Integer overflow)  (0) 2024.03.20
Java 문법 charAt, join, repeat  (0) 2024.03.17
Java에서 CSV파일 읽기  (0) 2024.03.09
Java 클래스  (0) 2024.02.27