본문 바로가기

Java

Map에서 값을 가져올때 Optional을 이용한 Null처리

Old Version

Map<StringString> map = new HashMap<>();
if (null != map) {
    String nameOld = StringUtils.defaultString(map.get("NAME"));
    System.out.println("nameOld:" + nameOld);
}
 

 

Optional 이용하여 Null처리

String nameNew = Optional.ofNullable(map).map(v -> v.get("NAME")).orElse("");
System.out.println("nameNew:" + nameNew);

 

String 값 Null처리시 보통 StringUtils를 사용했지만, Optional로 처리해봄.

String apprType = null;
String optionalStr = Optional.ofNullable(apprType).orElse("");
System.out.println("optionalStr:" + optionalStr);

 

Map에서 get으로 여러개의 필드에 대한 값을 가져올때는 if문을 이용하여 null처리를 하거나 Optional로 처리하거나 비슷한것 같다.
하지만 Map에서 한 두개의 값만을 가져올땐 Optional을 이용한것도 소스코드를 줄이고 가독성이 높아지는 것 같다.