-
Java - Long.valueOf() 변환시 null 처리하는 방법Java 2022. 9. 30. 17:30반응형
Long 값을 가지고 처리 시 null값이 들어가면 안되는 경우에 null safe 하게 처리하는 방법입니다.
public static Comparator<Person> getComparator() { return Comparator.comparing(p -> Long.valueOf(p.getAge()), Comparator.naturalOrder()); }
예를 들어 Person object에서 age를 비교하는 comparator를 만드는 경우입니다.
p.getAge()가 null인 경우 exception이 발생하게 됩니다.
이런 경우에 p.getAge()가 null일때 default 값을 넣어서 처리가 필요합니다.
public static Comparator<Person> getComparator() { return Comparator.comparing(p -> Long.valueOf( Optional.ofNullable(p.getAge()).orElseGet(() -> 0L) , Comparator.naturalOrder()); }
Optional 클래스를 사용해서 null인 경우 orElseGet으로 default값을 0으로 넣어줄 수 있습니다.
이렇게 처리하면 comparator에서 null인 경우에도 exception 발생하지 않고 처리가 가능합니다.
반응형'Java' 카테고리의 다른 글
Java - LocalDateTime 시간 설정 (0) 2023.01.12 Java - List 중간 데이터 삭제하는 법 (subList) (0) 2022.12.23 Java - Optional if else statement로 사용하는 방법 (0) 2022.09.27 Java - Set 순회하는 방법 (iteration) (1) 2022.09.23 Java - List의 마지막 요소 얻는 방법 (2) 2022.09.07