STUDY_NOTE/java

자바 문자열 비교 함수 compare(), compareTo()

kh201 2021. 4. 9. 09:45

**둘 다 객체를 비교하는 맞춤 방식, 둘 다 두 객체간의 관계를 설명하는 int반환

** compare는 인터페이스 구현할때 사용하는메서드(두개의 객체 전달 가능, 관계를 설명하는 int 반환)

 

 

* compareTo()

: 문자열의 사전순 값을 비교하여 그에 해당되는 int값을 리턴한다. 

 

ex) 

0 : 좌우 동일

1: 왼쪽이 더 큼 (좌)

-1: 오른쪽이 더 큼 (우)

 

String str1 = "A"

String str2 = "A"

String str3 = "B"

 

System.out.println(str1.compareTo(str2)); // 결과 0

System.out.println(str2.compareTo(str3)); // 결과 -1

System.out.println(str3.compareTo(str2)); // 결과 1

 

*compare()

: comparator 인터페이스 구현할 때 작성해야 하는 메서드이다. 

실제로 구현할 때 compare()에 2개의 인자를 넘겨 내부에 구현에 따라 int값을 리턴한다.

 

public int compare(String str1, String str2){

          if(str1 > str2){

                    return 1;

          }else if(str1 < str2){

                   return -1;

          }else{

                   return 0;

          }

}