자바 조건 식 최적화

1010 단어 Java
인 코딩 과정 에서 다음 과 같은 긴 표현 식 을 만 날 수 있 습 니 다. 
ParameterUtil.getInteger(request.getParameter("total"))

 
이 표현 식 의 값 은 null 일 수 있 지만, 우 리 는 그 에 게 있어 야 합 니 다! =null 일 때 이 값 을 가 져 오고 = = null 일 때 기본 값 을 사용자 정의 합 니 다. 이전 경험 에 따라 이렇게 쓸 수 있 습 니 다.
Integer total = ParameterUtil.getInteger(request.getParameter("total"));
total = total != null ? total : 0;

 
그러나 자바 라 는 방식 은 항상 우아 하지 않 습 니 다. PHP 의 조건 식 문법 을 보면 표현 식 의 값 = true 일 때 이 값 을 되 돌려 줍 니 다. 그렇지 않 으 면 사용자 정의 기본 값 을 되 돌려 줍 니 다. 예 를 들 어:
ParameterUtil.getInteger(request.getParameter("total")) ?: 0;

 
사실 자바 도 할 수 있 습 니 다. JDK 8 이 제공 하 는 optional 류 는 당신 의 모든 환상 을 만족 시 킬 수 있 습 니 다.
Optional.ofNullable(ParameterUtil.getInteger(request.getParameter("total"))).orElse(0)

 
원리 도 간단 하 다. 포장 일 뿐이다.
public T orElse(T other) {
    return value != null ? value : other;
}

좋은 웹페이지 즐겨찾기