Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- instance생성
- route53
- PostgreSQL
- string_agg()
- 리스트비교
- enumtype
- 리스트차집합
- anymatch메서드
- AWS
- Java
- mybatis
- Spring
- 널포인터에러
- hashset
- 리스트합집합
- WordPress
- list중복제거
- Annotation
- awsconsole
- db
- 지옥같은git
- ansible
- wordpress블로그
- enum
- 중복제거
- 리스트교집합
- 3tierarchitecture
- lightsail
- 두개리스트비교
- 권한정책
Archives
- Today
- Total
Anyway
[JAVA] list null체크 또는 isEmpty() 본문
if(reqDto.getFinalSeqNoList() == null && reqDto.getFinalSeqNoList().isEmpty())
null이고 비어있으면.. 뭔가 말 되는 것 같았는데..
논리적인 오류가 있는 코드였다.
list가 null일 경우 바로 뒤에 이어지는 list.isEmpty() 호출에서 NullPointerException이 발생할 수 있다는 거다.
즉 null 일 때도 isEmpty()를 호출하려고 한다. 만약 list가 null이면 자바에서 null 객체에 대해서는 아무런 메소드를 호출할 수 없다.
때문에 isEmpty()라는 메소드 자체가 호출이 안 된다는 것이다. > error 발생 : NullPointerException : null 이기 때문에 비어있는지 확인할 수 없는 것
현재 조건문에서는 null이면서 동시에 isEmpty()를 호출하는 식인데 실제로 null인지 확인하고 그 다음에 비어있는지를 확인해야 한다.
풀어서 설명하면 리스트가 null이면 그 뒤에 isEmpty()를 확인할 필요가 없다는 거다. 😀
if (reqDto.getFinalSeqNoList() == null || reqDto.getFinalSeqNoList().isEmpty())
이렇게 수정을 해야
1) null 체크 시 list가 null인 경우를 먼저 확인하며
2) isEmpty 호출 됐을 시 null이 아닌 경우에만 리스트가 비어 있는지 확인한다.
'Java' 카테고리의 다른 글
[JAVA] anyMatch 메서드 사용하기 (0) | 2024.11.13 |
---|---|
[JAVA] Enum Type XML에서 if문 작성하기 (1) | 2024.11.05 |
[JAVA] HashSet을 이용하여 list 중복값 제거하기 (0) | 2024.09.24 |