Stringutils equals 와 String equals

‍bng4535·2023년 4월 14일
0

두 문자열을 비교할 때 Stringutils equalsString equals 를 사용하는 것을 보았다.

두 문자열의 내용을 비교한다는 동일한 기능을 하는 것 같은데 둘의 차이가 무엇인지 궁금했다.

StringUtils 클래스의 equals() 메소드는 String 클래스의 equals() 메소드와 같은 방식으로 문자열의 내용을 비교하지만, null 값으로 인해 발생할 수 있는 예외 상황을 처리하는 추가적인 기능이 있다.

예를 들어, String 클래스의 equals() 메소드를 사용하여 null 값과 문자열을 비교하려고 하면 NullPointerException이 하는데, StringUtils 클래스의 equals() 메소드를 사용하면 이러한 예외 상황을 처리할 수 있다.

예시

String str1 = "Hello";
String str2 = "Hello";
String str3 = "World";

// String 클래스의 equals() 메소드 사용
boolean result1 = str1.equals(str2); // result1 = true
boolean result2 = str1.equals(str3); // result2 = false
boolean result3 = str1.equals(null); // NullPointerException 발생

// StringUtils 클래스의 equals() 메소드 사용
boolean result4 = StringUtils.equals(str1, str2); // result4 = true
boolean result5 = StringUtils.equals(str1, str3); // result5 = false
boolean result6 = StringUtils.equals(str1, null); // result6 = false
boolean result7 = StringUtils.equals(null, str2); // result7 = false
boolean result8 = StringUtils.equals(null, null); // result8 = true
profile
공부 기록

0개의 댓글