Groß- und Kleinschreibung in Java ignorieren

Mohammad Irfan 12 Oktober 2023
  1. Groß-/Kleinschreibung ignorieren mit der Methode toUppercase() in Java
  2. Groß-/Kleinschreibung ignorieren mit der Methode toLowerCase() in Java
  3. Groß-/Kleinschreibung ignorieren mit der Methode equalsIgnoreCase() in Java
  4. Groß-/Kleinschreibung ignorieren mit der Methode compareToIgnoreCase() in Java
Groß- und Kleinschreibung in Java ignorieren

Dieses Tutorial stellt vor, wie Groß- und Kleinschreibung von Zeichenketten in Java ignoriert werden.

Ein String ist eine Folge von Zeichen und in Java eine Klasse, die auch mehrere Hilfsmethoden enthält. Eine Zeichenfolge kann in Klein- oder Großbuchstaben oder einer Mischung aus beidem vorliegen, was in Ordnung ist, aber manchmal verursacht es ein Problem beim Vergleichen von Zeichenketten, da jedes Zeichen einen eindeutigen Unicode-Wert hat.

In diesem Artikel werden wir lernen, mit der Zeichenkette umzugehen, während wir die Groß-/Kleinschreibung ignorieren. Wir kennen den Vergleich zweier Strings mit der Methode equals(). Diese Methode gibt true zurück, wenn beide Strings gleich sind, inklusive Groß- und Kleinschreibung.

Sehen Sie sich zum Beispiel das folgende Beispiel an.

import java.lang.Object;
import java.util.*;
public class SimpleTesting {
  public static void main(String args[]) {
    String a = "SimpleTesting";
    String b = "SimpleTesting";
    String c = "SimpleTesting";
    a.equals(b); // return false
    a.equals(c); // returns true
  }
}

Wir fragen uns daher, ob es eine Möglichkeit gibt, zwei Zeichenketten zu vergleichen, während ihre Fälle ignoriert werden.

Nun, Java bietet uns verschiedene Ansätze, um diese Aufgabe zu erfüllen. Hier werden wir über diese Ansätze im Detail sprechen:

  • Groß-/Kleinschreibung mit der Methode toUppercase() ignorieren
  • Groß-/Kleinschreibung mit der Methode toLowerCase() ignorieren
  • Groß-/Kleinschreibung mit der Methode equalsIgnoreCase() ignorieren
  • Groß-/Kleinschreibung mit der Methode compareToIgnoreCase() ignorieren

Groß-/Kleinschreibung ignorieren mit der Methode toUppercase() in Java

Wir wandeln bei diesem Ansatz zuerst beide Strings in Großbuchstaben um und rufen dann die Methode equals() auf. Die Signatur für diese Methode lautet:

public String toUpperCase()

Diese Methode konvertiert alle Zeichenkettenzeichen basierend auf dem Standardgebietsschema in Großbuchstaben. Das bedeutet, dass icecream nur dann in ICECREAM konvertiert wird, wenn das Standardgebietsschema Locale.ENGLISH oder Locale.US ist.

Wir erhalten möglicherweise unvorhersehbare Ergebnisse, wenn das Standardlokal auf ein anderes Land oder eine andere Sprache eingestellt ist, die diese Zeichen nicht erkennt. Wir können das Gebietsschema an den Funktionsaufruf übergeben, um dies zu vermeiden.

Vergleichen wir nun zwei Strings mit den Methoden toUpperCase() und equals() in Java. Sehen Sie sich den folgenden Code an:

import java.lang.Object;
import java.util.*;
public class SimpleTesting {
  public static void main(String args[]) {
    String desert1 = "icecream";
    String desert2 = "IceCream";

    // converting to both the strings to upper case
    String desert1_converted = desert1.toUpperCase();
    String desert2_converted = desert2.toUpperCase();

    // comparing both the desert
    boolean same_or_not1 = desert1_converted.equals(desert2_converted);
    boolean same_or_not2 = desert1.equals(desert2);

    System.out.println("Comparison with conversion: " + same_or_not1);
    System.out.println("Comparison without conversion: " + same_or_not2);
  }
}

Ausgabe:

Comparison with conversion: true
Comparison without conversion: false

Im obigen Beispiel funktioniert toUpperCase() gut, ohne dass ein Gebietsschema übergeben wird, da unser Standardgebietsschema Englisch ist.

Groß-/Kleinschreibung ignorieren mit der Methode toLowerCase() in Java

Diese Methode ist genau wie die vorherige, außer dass sie alle Zeichen beider Zeichenketten in Kleinbuchstaben umwandelt. Die Methodensignatur lautet:

public String toLowerCase()

Gemäß dem Standardgebietsschema ändert diese Prozedur alle Zeichen in der Zeichenfolge in Kleinbuchstaben.

Das heißt, wenn das Standardgebietsschema Locale.ENGLISH oder Locale.US ist, wird ICECREAM in icecream umgewandelt. Wir erhalten möglicherweise unvorhersehbare Ergebnisse, wenn das Standardlokal auf ein anderes Land oder eine andere Sprache eingestellt ist, die diese Zeichen nicht erkennt.

Wir können das Gebietsschema als Argument an den Funktionsaufruf übergeben, um dies zu vermeiden. Lassen Sie uns einen genaueren Blick darauf werfen, wie diese Funktion funktioniert.

Vergleichen wir nun zwei Strings mit den Methoden toLowerCase() und equals() in Java. Sehen Sie sich den folgenden Code an:

import java.lang.Object;
import java.util.*;
public class SimpleTesting {
  public static void main(String args[]) {
    String desert1 = "icecream";
    String desert2 = "IceCream";

    // converting to both the strings to lower case
    String desert1_converted = desert1.toLowerCase();
    String desert2_converted = desert2.toLowerCase();

    // comparing both the desert
    boolean same_or_not1 = desert1_converted.equals(desert2_converted);
    boolean same_or_not2 = desert1.equals(desert2);

    System.out.println("Comparison with conversion: " + same_or_not1);
    System.out.println("Comparison without conversion: " + same_or_not2);
  }
}

Ausgabe:

Comparison with conversion: true
Comparision without conversion: false

Groß-/Kleinschreibung ignorieren mit der Methode equalsIgnoreCase() in Java

Diese Methode ist genau wie die equals()-Methode, außer dass sie die Groß-/Kleinschreibung der Strings ignoriert. Schauen wir uns zuerst die Methodensignatur an.

public boolean equalsIgnoreCase(String anotherString)

Diese Methode gibt true zurück, wenn zwei Strings gleich sind, nachdem sie ihre Groß- und Kleinschreibung ignoriert haben.

Wenn die Länge zweier Zeichenketten gleich ist und die entsprechenden Zeichen in den beiden Zeichenketten gleich sind, werden sie als gleich angesehen, wobei die Groß-/Kleinschreibung ignoriert wird. Nach dieser Methode sind ICECREAM und icecream gleich; daher wird true zurückgegeben.

Sehen Sie sich den folgenden Code an, um zu verstehen, wie er funktioniert.

import java.lang.Object;
import java.util.*;
public class SimpleTesting {
  public static void main(String args[]) {
    String desert1 = "icecream";
    String desert2 = "IceCream";

    // comparing both the deserts
    boolean same_or_not1 = desert1.equalsIgnoreCase(desert2);

    System.out.println("Comparison : " + same_or_not1);
  }
}

Ausgabe:

Comparison : true

Groß-/Kleinschreibung ignorieren mit der Methode compareToIgnoreCase() in Java

Dieser Ansatz vergleicht lexikographisch zwei Zeichenketten, wobei die Unterschiede zwischen Groß- und Kleinschreibung außer Acht gelassen werden. Diese Methode gibt eine ganze Zahl zurück, die der Differenz zwischen den ersten beiden ungleichen Zeichen entspricht.

Seine Signatur lautet:

public int compareToIgnoreCase(String str)

Wenn beide Strings äquivalent sind, wird 0 zurückgegeben. Sehen Sie sich den Beispielcode unten an:

import java.lang.Object;
import java.util.*;
public class SimpleTesting {
  public static void main(String args[]) {
    String desert1 = "icecream";
    String desert2 = "IceCream";

    // comparing both the deserts
    int same_or_not1 = desert1.compareToIgnoreCase(desert2);

    System.out.println("Comparision : " + same_or_not1);
  }
}

Ausgabe:

Comparision : 0

Verwandter Artikel - Java String