使用三元运算符而不是 if 语句
using ternary operation instead of if statement
我想使用三元运算而不是 if 条件块来执行您看到的这段代码。一般来说,使用三元运算符总是一个好的选择吗?在某些地方,他们说使用三元运算符而不是不断使用 if 条件块的代码更具可读性和更灵活的代码。
@Override
public ResponseEntity<? extends UserDetailResponse> getByPhoneNumberUserDetail(String phoneNumber) {
UserDetail userDetail = userDetailRepository.findByPhoneNumber(phoneNumber);
if (!userDetail.getPhoneNumber().equals(phoneNumber)) {
return new ResponseEntity<>(new UserDetailResponse(MessageCase.COULDNT_FOUNDED_USER_DETAILS_SUCH_PHONE_NUMBER.getMessage(), 400), HttpStatus.BAD_REQUEST);
}
return new ResponseEntity<>(new UserDetailResponse(MessageCase.USER_DETAL_SUCESSFULLY_FOUNDED.getMessage(), 200), HttpStatus.OK);
}
UserDetailResponse userDetailResponse = userDetail!=null && !userDetail.getPhoneNumber().equals(phoneNumber) ? new UserDetailResponse(MessageCase.COULDNT_FOUNDED_USER_DETAILS_SUCH_PHONE_NUMBER.getMessage(), 400) : new UserDetailResponse(MessageCase.USER_DETAL_SUCESSFULLY_FOUNDED.getMessage(), 200);
responseEntity = new ResponseEntity<>(UserDetailResponse,UserDetailResponse.getStatus());
return responseEntity;
在 UserDetailResponse 中实现 getStatus 以获取状态代码。
我想使用三元运算而不是 if 条件块来执行您看到的这段代码。一般来说,使用三元运算符总是一个好的选择吗?在某些地方,他们说使用三元运算符而不是不断使用 if 条件块的代码更具可读性和更灵活的代码。
@Override
public ResponseEntity<? extends UserDetailResponse> getByPhoneNumberUserDetail(String phoneNumber) {
UserDetail userDetail = userDetailRepository.findByPhoneNumber(phoneNumber);
if (!userDetail.getPhoneNumber().equals(phoneNumber)) {
return new ResponseEntity<>(new UserDetailResponse(MessageCase.COULDNT_FOUNDED_USER_DETAILS_SUCH_PHONE_NUMBER.getMessage(), 400), HttpStatus.BAD_REQUEST);
}
return new ResponseEntity<>(new UserDetailResponse(MessageCase.USER_DETAL_SUCESSFULLY_FOUNDED.getMessage(), 200), HttpStatus.OK);
}
UserDetailResponse userDetailResponse = userDetail!=null && !userDetail.getPhoneNumber().equals(phoneNumber) ? new UserDetailResponse(MessageCase.COULDNT_FOUNDED_USER_DETAILS_SUCH_PHONE_NUMBER.getMessage(), 400) : new UserDetailResponse(MessageCase.USER_DETAL_SUCESSFULLY_FOUNDED.getMessage(), 200);
responseEntity = new ResponseEntity<>(UserDetailResponse,UserDetailResponse.getStatus());
return responseEntity;
在 UserDetailResponse 中实现 getStatus 以获取状态代码。