삼항 연산자를 적용한 코드:
// 닉네임 중복확인 컨트롤러
@GetMapping("/user/NickNamecheck")
public ResponseEntity<Resp<Boolean>> NickNamecheck(@RequestParam("nickName") String nickName) {
boolean isSamenickName = userService.nickNameCheck(nickName);
String message = isSamenickName ? "중복된 닉네임입니다." : "사용할 수 있는 닉네임입니다.";
return ResponseEntity.ok(Resp.ok(isSamenickName, message));
}
코드 설명:
- 삼항 연산자 사용:
isSamenickName ? "중복된 닉네임입니다." : "사용할 수 있는 닉네임입니다.":isSamenickName의 값이 참일 경우"중복된 닉네임입니다."를 반환하고, 거짓일 경우"사용할 수 있는 닉네임입니다."를 반환합니다.
Resp.ok(isSamenickName, message):isSamenickName과 해당 메시지를 응답으로 보냅니다.
장점:
- 간결함:
if-else대신 삼항 연산자를 사용하여 중복되는 코드를 줄입니다.
- 가독성: 삼항 연산자는 조건문을 한 줄로 처리할 수 있어 코드를 더 읽기 쉽게 만듭니다.
삼항 연산자는 조건문을 간결하게 표현하는 연산자입니다.
if-else 구문을 짧고 한 줄로 표현할 수 있는 특징이 있으며, 다음과 같은 형식을 가지고 있습니다:조건식 ? 참일 때 반환할 값 : 거짓일 때 반환할 값;
- 조건식: 참 또는 거짓으로 평가될 수 있는 논리식입니다.
- 참일 때 반환할 값: 조건식이 참일 때 반환할 값 또는 실행될 코드입니다.
- 거짓일 때 반환할 값: 조건식이 거짓일 때 반환할 값 또는 실행될 코드입니다.
삼항 연산자 구조:
result = condition ? valueIfTrue : valueIfFalse;
condition: 조건이 참인지 거짓인지 평가하는 논리식.
valueIfTrue: 조건이 참일 때 실행되는 값.
valueIfFalse: 조건이 거짓일 때 실행되는 값.
예시: if-else 구문과 삼항 연산자 비교
1. if-else 구문:
if (age >= 18) {
message = "성인입니다.";
} else {
message = "미성년자입니다.";
}
2. 삼항 연산자로 바꾸기:
message = age >= 18 ? "성인입니다." : "미성년자입니다.";
- 조건
age >= 18이 참일 경우"성인입니다."를 반환하고, 거짓일 경우"미성년자입니다."를 반환합니다.
- 삼항 연산자는 조건이 간단할 때 사용하면 가독성을 높이고 코드를 간결하게 만들 수 있습니다.
너의 코드에서의 삼항 연산자 예시:
기존 if-else 코드:
boolean isSamenickName = userService.nickNameCheck(nickName);
if (isSamenickName) {
message = "중복된 닉네임입니다.";
} else {
message = "사용할 수 있는 닉네임입니다.";
}삼항 연산자로 바꾸기:
String message = isSamenickName ? "중복된 닉네임입니다." : "사용할 수 있는 닉네임입니다.";결론:
- 삼항 연산자는 단순한 조건문을 한 줄로 간결하게 작성할 수 있게 해줍니다.
- 조건이 복잡하지 않을 때 사용하면 가독성이 높아지지만, 너무 복잡한 경우에는 오히려 가독성을 해칠 수 있으므로 주의해야 합니다.
Share article