1. 메소드 목록
메소드 목록들은 이 링크에서 확인이 가능하다.
2. equals(Object anObject) vs contentEquals(CharSequence cs)
equals 메소드는 모든 클래스의 부모인 Object 클래스에 정의되어있는 메소드로, 객체들이 같은지 여부를 판단할 때 사용하는 메소드이다. String의 경우 문자열 값이 일치하면 true를 반환하게 되어있다.
String str = "abc";
String str2 = "abc";
StringBuffer sb = new StringBuffer("abc");
System.out.println(str.equals(str2)); // true
System.out.println(str.equals(sb)); //false
위 코드에서 String과 StringBuffer 의 문자열이 같음에도 equals 메소드는 false를 반환한다. Strinbg.equals() 메소드는 String간의 비교를 전재하였기 때문에 false를 반환하는 것이다.
String str = "abc";
String str2 = "abc";
StringBuffer sb = new StringBuffer("abc")
System.out.println(str.equals(str2));
System.out.println(str.contentEquals(sb));
contentEquals() 메소드는 CharSequence 를 인자로 받는다. CharSequence 는 인터페이스로, 자바의 모든 문자열을 표현하는 클래스는 CharSequence 인터페이스를 구현한다.
즉, 이 메소드는 String과 다른 CharSequence 의 구현 클래스를 비교할 때 사용하는 메소드이다.
'Java > 유용한 클래스들' 카테고리의 다른 글
| equals() 와 hashCode() (0) | 2021.08.05 |
|---|