자바 문자열 클래스 같음IgnoreCase() 메서드는 문자열의 대/소문자(하위 및 상위)에 관계없이 문자열의 내용을 기준으로 주어진 두 문자열을 비교합니다. 이는 equals() 메소드와 동일하지만 대소문자 구분을 확인하지 않습니다. 일치하지 않는 문자가 있으면 false를 반환하고, 일치하지 않으면 true를 반환합니다.
서명
publicboolean equalsIgnoreCase(String str)
매개변수
str : 다른 문자열, 즉 이 문자열과 비교됩니다.
보고
그것은 반환 진실 두 문자열의 문자가 같으면 대소문자를 무시합니다. 거짓 .
마이플릭서
내부 구현
public boolean equalsIgnoreCase(String anotherString) { return (this == anotherString) ? true : (anotherString != null) && (anotherString.value.length == value.length) && regionMatches(true, 0, anotherString, 0, value.length); }
구현을 보면 equalsIgnoreCase() 메서드가 RegionMatches() 메서드를 호출하고 있다는 것이 분명해집니다. 이는 equalsIgnoreCase() 메소드에서 대소문자를 구분하지 않게 만듭니다. RegionMatches() 메서드의 서명은 아래에 언급되어 있습니다.
공개 부울 지역 일치(booleanignoreCase, int toffset, String other, int ooffset, int len)
RegionMatches() 메서드는 5개의 매개변수를 구문 분석합니다. 첫 번째 매개변수 대소문자 무시 위 구현에서는 true로 설정됩니다. 따라서 메서드가 실행될 때 해당 메서드가 다음과 같은지 확인합니다. 대소문자 무시 플래그가 참인지 아닌지. 그렇다면 두 문자열 모두에서 각각 하나의 문자를 가져온 다음 비교합니다. 비교 결과 거짓 값이 나오면 두 문자를 모두 대문자로 변환한 다음 비교 결과 여전히 거짓 값을 나타내는지 확인한 다음 두 문자를 모두 소문자로 변환한 다음 비교합니다. 비교 결과 참값이 나오면 두 문자열의 내용은 모두 같습니다. 그렇지 않으면 그렇지 않습니다. 논의된 비교의 코드 조각은 아래에 언급되어 있습니다.
자바 케이스 진술
while (toffset <last) { char ch1="getChar(value," toffset++); ch2="getChar(other," ooffset++); if (ch1="=" ch2) continue; } convert each character to uppercase and then make the comparison. comparison yeilds a true value, next pair of characters should be scanned uch1="Character.toUpperCase(ch1);" uch2="Character.toUpperCase(ch2);" (uch1="=" u2) lowercase otherwise, return false. (character.tolowercase(uch1)="=" character.tolowercase(uch2)) false; reaching here means content both strings are same after ignoring case sensitiveness true; < pre> <p>One may argue that if we made a comparison after converting to uppercase, then why do we need an extra comparison by converting characters to the lowercase. The reason behind this is to provide to the requirement of Georgian alphabets. Conversion in uppercase does not work properly for the Georgian alphabets, as they have some strange rules about the case conversion. Therefore, one extra comparison, by converting characters to the lowercase, is required.</p> <h2>Java String equalsIgnoreCase() Method Example</h2> <p> <strong>FileName:</strong> EqualsIgnoreCaseExample.java</p> <pre> public class EqualsIgnoreCaseExample{ public static void main(String args[]){ String s1='javatpoint'; String s2='javatpoint'; String s3='JAVATPOINT'; String s4='python'; System.out.println(s1.equalsIgnoreCase(s2));//true because content and case both are same System.out.println(s1.equalsIgnoreCase(s3));//true because case is ignored System.out.println(s1.equalsIgnoreCase(s4));//false because content is not same }} </pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> true true false </pre> <h2>Java String equalsIgnoreCase() Method Example 2</h2> <p>Let's see an example where we are testing string equality among the strings.</p> <p> <strong>FileName:</strong> EqualsIgnoreCaseExample2.java</p> <pre> import java.util.ArrayList; public class EqualsIgnoreCaseExample2 { public static void main(String[] args) { String str1 = 'Mukesh Kumar'; ArrayList list = new ArrayList(); list.add('Mohan'); list.add('Mukesh'); list.add('RAVI'); list.add('MuKesH kuMar'); list.add('Suresh'); for (String str : list) { if (str.equalsIgnoreCase(str1)) { System.out.println('Mukesh kumar is present'); } } } } </pre> <p> <strong>Output:</strong> </p> <pre> Mukesh kumar is present </pre> <hr></last)>지금 테스트해보세요
산출:
true true false
Java 문자열은 IgnoreCase() 메소드 예 2
문자열 간의 문자열 동등성을 테스트하는 예를 살펴보겠습니다.
자바 정렬 배열
파일 이름: EqualsIgnoreCaseExample2.java
import java.util.ArrayList; public class EqualsIgnoreCaseExample2 { public static void main(String[] args) { String str1 = 'Mukesh Kumar'; ArrayList list = new ArrayList(); list.add('Mohan'); list.add('Mukesh'); list.add('RAVI'); list.add('MuKesH kuMar'); list.add('Suresh'); for (String str : list) { if (str.equalsIgnoreCase(str1)) { System.out.println('Mukesh kumar is present'); } } } }
산출:
Mukesh kumar is present