반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- vscode
- 자바
- html
- table
- 이탈리아
- list
- 정규식
- javascript
- Eclipse
- input
- date
- CSS
- replace
- HashMap
- json
- 자바스크립트
- IntelliJ
- Array
- string
- 문자열
- CMD
- Java
- 인텔리제이
- Button
- 배열
- Visual Studio Code
- ArrayList
- js
- map
- 이클립스
Archives
- Today
- Total
어제 오늘 내일
[Java String] equals() vs equalsIgnoreCase() – 문자열 비교하기 본문
자바에서 문자열이 같은지 비교할 때는 == 대신 equals() 메서드를 써야 한다는 건 많이 알려져 있습니다.
하지만 대소문자를 구분하지 않고 비교해야 할 때는 equalsIgnoreCase()를 쓰면 훨씬 편리합니다.
1. equals()
public boolean equals(Object anObject)
- 두 문자열이 완전히 동일할 때만
true - 대소문자를 구분함
String s1 = "Java";
String s2 = "Java";
String s3 = "java";
System.out.println(s1.equals(s2)); // true
System.out.println(s1.equals(s3)); // false (대소문자 다름)
👉 "Java"와 "java"는 다른 문자열로 취급합니다.
2. equalsIgnoreCase()
public boolean equalsIgnoreCase(String anotherString)
- 문자열을 비교할 때 대소문자를 무시
"Java","JAVA","java"모두 같은 문자열로 본다
String s1 = "Hello";
String s2 = "HELLO";
System.out.println(s1.equals(s2)); // false
System.out.println(s1.equalsIgnoreCase(s2)); // true
👉 대소문자를 구분하지 않아야 할 때 매우 유용합니다.
3. 실전 활용 예제
사용자 입력 비교
Scanner sc = new Scanner(System.in);
System.out.print("계속하시겠습니까? (yes/no): ");
String input = sc.nextLine();
if (input.equalsIgnoreCase("yes")) {
System.out.println("프로그램을 계속 실행합니다.");
}
👉 "yes", "YES", "Yes" 등 어떤 형태로 입력해도 인식 가능.
파일 확장자 체크
String filename = "report.PDF";
if (filename.endsWith(".pdf") || filename.endsWith(".PDF")) {
System.out.println("PDF 파일입니다.");
}
이 코드를 equalsIgnoreCase()와 함께 쓰면 더 깔끔하게 처리 가능:
if (filename.toLowerCase().endsWith(".pdf")) {
System.out.println("PDF 파일입니다.");
}
혹은 비교 문자열 자체를 equalsIgnoreCase()로 검사하는 방식도 가능.
4. 정리
equals()→ 문자열이 정확히 같을 때만 trueequalsIgnoreCase()→ 대소문자 구분 없이 같으면 true- 사용자 입력, 확장자 비교 등 대소문자를 무시해야 하는 상황에서는
equalsIgnoreCase()를 쓰는 게 더 적절
👉 대소문자까지 정확히 비교할 땐 equals(), 무시하고 비교할 땐 equalsIgnoreCase().
반응형
'IT > Java' 카테고리의 다른 글
| [Java String] toUpperCase(), toLowerCase() – 대소문자 변환하기 (0) | 2025.09.19 |
|---|---|
| [Java String] compareTo() vs compareToIgnoreCase() – 문자열 사전순 비교 (0) | 2025.09.19 |
| [Java String] contains() – 문자열 포함 여부 확인하기 (0) | 2025.09.18 |
| [Java String] startsWith(), endsWith() – 문자열 시작과 끝 검사하기 (0) | 2025.09.17 |
| [Java String] isEmpty() vs isBlank() 차이 정리 (0) | 2025.09.17 |
Comments