본문 바로가기
Study/Java

[Java] StringUtils.isBlank 와 StringUtils.isEmpty 차이

by 오늘만 사는 여자 2021. 12. 13.
728x90
반응형

둘은 언뜻 같아보이지만 다르다. 결론부터 말하면 isBlank는 공백을 true로 판단하고 Empty는 공백도 false로 판단한다.

값(value) isEmpty() isBlank()
null true true
"" true true
" " false true
"sdnfi" false false
" sdnfi" false false

자바 기본 라이브러리 외에 가장 빈번하게 사용되는 라이브럴 Apache common 라이브러리를 들 수 있다.

이 중 StringUtils 패키지는 문자열 처리 시에 유용한 기능들을 많이 제공한다.

 

isBlank와 isEmpty의 차이점은 아래 예제와 같이 공백처리이다. isBlank의 경우 공백을 blank 즉, 비어있는 값으로 처리하며  isEmpty의 경우 공백을 비어있지 않다구 리턴한다.

 

StringUtils.isBlank : 공백을 빈값으로 처리 

StringUtils.isBlank(null) = false
StringUtils.isBlank("") = false
StringUtils.isBlank(" ") = false

StringUtils.isEmpty : 공백을 비어있지 않다구 처리

StringUtils.isEmpty(null) = true
StringUtils.isEMpty("") = true
StringUtils.isEmpty(" ") = false

 

이 두가지는 String 값이 비어있는 경우를 에러로 처리하거나 빈 값에 대한 예외 처리를 하는 경우에 많이 사용한다.

공백에 대해서도 비어있다고 판단하는 경우에는 isEmpty가 아닌 isBlank를 사용해야 함을 주의해서 사용해야 한다.

 

StringUtils.isNotEmpty : 공백을 비어있지 않다고 처리 

StringUtils.isNotEmpty(" ")    = true

 

출처 : https://hilucky.tistory.com/217

728x90
반응형

'Study > Java' 카테고리의 다른 글

[Java] 유용한 라이브러리  (0) 2021.12.14
[Java] 주민등록번호 유효성 검사  (0) 2021.12.14
[Java] Reflection  (0) 2021.11.08
[Java] JAR WAR 차이점 및 특징  (0) 2021.11.05
[Java] 날짜 / 시간 차이 계산  (0) 2021.03.22

댓글