본문 바로가기
Back-end/JAVA & Spring

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

by 꼬바리 2021. 9. 30.

java에서 get() NullPointerException 일때

 

자바 기본 라이브러리 외에 가장 빈번하게 사용되는 라이브러리로 Apache common 라이브러리를 들 수 있다. 이 중 StringUtils 패키지는 문자열 처리 시에 유용한 기능들을 많이 제공한다.

 

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

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

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

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

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

이 두가지는 String값이 비어있는 경우를 에러로 처리하거나 빈 값에 대한 예외 처리를 하는 경우에 많이 사용한다. 공백에 대해서도 비어있다고 판단하는 경우에는 isEmpty가 아닌 isBlank를 사용해야 함을 주의해서 사용해야 한다.

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

StringUtils.isNotEmpty(" ")    = true

 

728x90
반응형

댓글