logo

Java String equalsIgnoreCase()

Java Řetězcová třída equalsIgnoreCase() metoda porovnává dva dané řetězce na základě obsahu řetězce bez ohledu na velikost písmen (dolní a horní) řetězce. Je to stejné jako metoda equals(), ale nekontroluje rozlišení velkých a malých písmen. Pokud některý znak není shodný, vrátí hodnotu false, jinak vrátí hodnotu true.

Podpis

 publicboolean equalsIgnoreCase(String str) 

Parametr

str : jiný řetězec, tj. ve srovnání s tímto řetězcem.

pothineni beran

Návraty

Vrací se skutečný pokud jsou znaky obou řetězců stejné, jinak se malá a velká písmena ignorují Nepravdivé .

Vnitřní implementace

 public boolean equalsIgnoreCase(String anotherString) { return (this == anotherString) ? true : (anotherString != null) && (anotherString.value.length == value.length) && regionMatches(true, 0, anotherString, 0, value.length); } 

Při pohledu na implementaci je zřejmé, že metoda equalsIgnoreCase() vyvolává metodu regionMatches(). Způsobuje, že metoda equalsIgnoreCase() nerozlišuje malá a velká písmena. Podpis metody regionMatches() je uveden níže.

public boolean regionMatches(boolean ignoreCase, int toffset, String other, int ooffset, int len)

Metoda regionMatches() analyzuje pět parametrů. První parametr ignorovat případ je ve výše uvedené implementaci nastaveno na true. Když je tedy metoda spuštěna, zkontroluje, zda ignorovat případ vlajka je pravdivá nebo ne. Pokud ano, pak se vezme po jednom znaku z obou řetězců a porovná se. Pokud porovnání dává nepravdivou hodnotu, pak se oba znaky převedou na velká písmena a poté se zkontroluje, zda srovnání stále dává nepravdivou hodnotu, pak se oba znaky převedou na malá písmena a poté se porovnají. Pokud porovnání dává skutečnou hodnotu, pak mají oba řetězce stejný obsah; jinak ne. Snippet kódu diskutovaného srovnání je uveden níže.

f filmy
 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=&apos;javatpoint&apos;; String s2=&apos;javatpoint&apos;; String s3=&apos;JAVATPOINT&apos;; String s4=&apos;python&apos;; 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&apos;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 = &apos;Mukesh Kumar&apos;; ArrayList list = new ArrayList(); list.add(&apos;Mohan&apos;); list.add(&apos;Mukesh&apos;); list.add(&apos;RAVI&apos;); list.add(&apos;MuKesH kuMar&apos;); list.add(&apos;Suresh&apos;); for (String str : list) { if (str.equalsIgnoreCase(str1)) { System.out.println(&apos;Mukesh kumar is present&apos;); } } } } </pre> <p> <strong>Output:</strong> </p> <pre> Mukesh kumar is present </pre> <hr></last)>
Otestujte to hned

Výstup:

 true true false 

Příklad metody Java String equalsIgnoreCase() 2

Podívejme se na příklad, kde testujeme rovnost řetězců mezi řetězci.

Název souboru: EqualsIgnoreCaseExample2.java

 import java.util.ArrayList; public class EqualsIgnoreCaseExample2 { public static void main(String[] args) { String str1 = &apos;Mukesh Kumar&apos;; ArrayList list = new ArrayList(); list.add(&apos;Mohan&apos;); list.add(&apos;Mukesh&apos;); list.add(&apos;RAVI&apos;); list.add(&apos;MuKesH kuMar&apos;); list.add(&apos;Suresh&apos;); for (String str : list) { if (str.equalsIgnoreCase(str1)) { System.out.println(&apos;Mukesh kumar is present&apos;); } } } } 

Výstup:

 Mukesh kumar is present