equals를 사용하다보면 NullPointerException를 많이 볼 수 있습니다.
//map = {NAME=jiyoon}
String test = map.get("TEST"); //null
test.equals("hi"); //NullPointerException
equals를 호출하는 문자열이 null이기 때문이므로, 다음과 같은 처리를 해줍니다.
1. equals를 호출하는 문자열(변수)이 null인지 확인하기
//map = {NAME=jiyoon}
String test = map.get("TEST"); //null
if(test ! = null)
test.equals("hi");
2. 비교할 문자열이 equals 호출
//map = {NAME=jiyoon}
String test = map.get("TEST"); //null
"hi".equals(test); //false
변수가 null인지 확인하는 방법을 사용하면 코드의 가독성이 떨어지는 문제가 생길 수 있습니다.
이를 개선하기 위해 Java8부터 Optional이라는게 생겼습니다.
다음 포스팅에서 Optional의 사용법을 알아보기로 하겠습니다.😏
728x90
'Java' 카테고리의 다른 글
[Java] String to LocalDate (0) | 2023.08.13 |
---|---|
[Java] Optional로 Null 체크하기 - Java8이상 (0) | 2023.08.12 |
[Java] LocalDate 비교 (0) | 2023.08.10 |
[JAVA] HashMap, LinkedHashMap - value로 key찾기 (0) | 2023.08.09 |
[JAVA] Set과 Map의 차이 (0) | 2023.07.27 |