-
[Java] StringUtils.isBlank 와 StringUtils.isEmpty 차이Java 2019. 4. 15. 00:27
자바 기본 라이브러리 외에 가장 빈번하게 사용되는 라이브러리로 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
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html#isBlank()
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html#isEmpty()
'Java' 카테고리의 다른 글
[Java] Lombok @Data 어노테이션 (0) 2019.05.07 [Java] 정규표현식 기본 문법 (0) 2019.04.23 [Java] 부정을 나타내는 변수명 붙이는 방법 (0) 2019.04.21 [Java] 읽기 쉬운 테스트를 위한 Hamcrest 사용하기 (0) 2019.04.15 [Java] 인기있는 Unit Test 네이밍 규칙 (0) 2019.04.15 댓글