Notice
Recent Posts
Recent Comments
Link
SeouliteLab
[Java/자바] 문자열(String)을 비교하는 방법 (==, equals, compare) 본문
자바에서 문자열을 비교하는 것은 프로그래밍에서 매우 중요한 작업입니다. 문자열을 비교할 때 주로 사용되는 방법은 == 연산자, equals() 메서드, compareTo() 메서드 등이 있습니다. 각각의 방법에 대해 예제를 통해 자세히 알아보겠습니다.
예제 1: == 연산자를 이용한 문자열 비교
String str1 = "hello";
String str2 = "hello";
String str3 = new String("hello");
boolean result1 = (str1 == str2); // true
boolean result2 = (str1 == str3); // false
== 연산자는 문자열의 주소를 비교합니다. 따라서 같은 문자열 리터럴을 가리키는 경우 true를 반환하고, 새로운 객체를 생성한 경우에는 false를 반환합니다.
예제 2: equals() 메서드를 이용한 문자열 비교
String str1 = "hello";
String str2 = "hello";
String str3 = new String("hello");
boolean result1 = str1.equals(str2); // true
boolean result2 = str1.equals(str3); // true
equals() 메서드는 문자열의 내용을 비교합니다. 따라서 문자열의 내용이 같으면 true를 반환합니다.
예제 3: compareTo() 메서드를 이용한 문자열 비교
String str1 = "hello";
String str2 = "world";
int result1 = str1.compareTo(str2); // 음수
int result2 = str2.compareTo(str1); // 양수
int result3 = str1.compareTo("hello"); // 0
compareTo() 메서드는 문자열을 사전 순으로 비교합니다. 두 문자열이 같으면 0을 반환하고, str1이 str2보다 앞에 오면 음수를, str1이 str2보다 뒤에 오면 양수를 반환합니다.
예제 4: compareToIgnoreCase() 메서드를 이용한 대소문자 무시 비교
String str1 = "Hello";
String str2 = "hello";
int result = str1.compareToIgnoreCase(str2); // 0
compareToIgnoreCase() 메서드는 대소문자를 무시하고 문자열을 비교합니다. 따라서 문자열의 내용이 같으면 0을 반환합니다.
예제 5: 문자열 배열 비교
String[] arr1 = {"apple", "banana", "cherry"};
String[] arr2 = {"apple", "banana", "cherry"};
boolean result = Arrays.equals(arr1, arr2); // true
Arrays.equals() 메서드를 사용하여 문자열 배열을 비교할 수 있습니다. 두 배열의 길이와 각 요소가 모두 같으면 true를 반환합니다.
'프로그래밍' 카테고리의 다른 글
[Java/자바] 로그 출력, 파일 저장 방법 (Logger 라이브러리) (0) | 2024.03.06 |
---|---|
[Java/자바] StringBuilder 사용 방법, 예제 (0) | 2024.03.06 |
[Java/자바] 배열 정렬(Sorting) (오름차순, 내림차순) (0) | 2024.03.06 |
[Java/자바] ArrayList 초기화 방법 (0) | 2024.03.06 |
[Java/자바] replace()와 replaceAll() 메서드의 차이점 (0) | 2024.03.06 |