Introductie over Stringvergelijking in Java

In Java staat een reeks tekens bekend als een tekenreeks. Het is onveranderlijk (kan niet meer worden gewijzigd nadat het is gemaakt) en helpt bij het uitvoeren van verschillende bewerkingen. Een vergelijking van tekenreeksen is ook een veel voorkomende programmeertaak in Java. Het kan op verschillende manieren worden uitgevoerd en het zal in de volgende paragrafen in detail worden besproken.

Hoe String in Java te vergelijken?

Zoals reeds besproken, kan Stringvergelijking worden gedaan met behulp van verschillende methoden. Zij zijn:

  • De methode equals () gebruiken
  • De methode CompareTo () gebruiken
  • De methode equalsIgnoreCase () gebruiken
  • Met behulp van de methode CompareToIgnoreCase ()

1. Is gelijk aan () methode

equals () methode vergelijkt twee strings op basis van de stringinhoud. Als de tekenreeksen niet in hetzelfde geval zijn (dwz hoofdletters of kleine letters), worden deze beschouwd als niet gelijk. Hieronder ziet u een voorbeeld van de methode equals ().

Programma

public class StringComparisonExamples (
public static void main(String() args) (
String str1 = "Balloon";
String str2 = "Balloon";
//string comparison using equals method
if (str1.equals(str2)) (
System.out.println("Both str1 : " + str1 + " and str2 : "+ str2 +" are equal");
)
else
(
System.out.println("Both str1 : " + str1 + " and str2 : "+ str2 +" are not equal");
)
String str3 = "Happy";
String str4 = "hai";
if (str3.equals(str4)) (
System.out.println("Both str3 : " + str3 + " and str4 : "+ str4 +" are equal");
)
else
(
System.out.println("Both str3 : " + str3 + " and str4 : "+ str4 +" are not equal");
)
String str5 = "Happy";
String str6 = "hard";
if (str5.equals(str6)) (
System.out.println("Both str5 : " + str5 + "and str6 : "+ str6 +" are equal");
)
else
(
System.out.println("Both str5 : " + str5 + " and str6 : "+ str6 +" are not equal");
)
)
)

Output:

Verklaring van de bovenstaande code

  • Hier zijn twee strings str1 en str2 gelijk omdat ze van hetzelfde geval zijn. (Kameelgeval).
  • Ook zijn Str3 en Str4, str5 en str6 niet gelijk.

2. Vergelijk met () Methode

In deze methode worden waarden lexicografisch vergeleken en wordt een waarde van het type geheel getal geretourneerd. De waarde is gebaseerd op of de eerste string gelijk is aan, kleiner is dan of groter dan de 2de string.

Twee strings str1 en str2 zijn aanwezig en

  • als str1 == str2, dan 0
  • als str1> str2, dan + ve waarde
  • indien str1 <str2, dan -ve waarde

Programma

//Java program to demonstrate compareTo method
public class StringComparisonExamples (
public static void main(String() args) (
String str1 = "Balloon";
String str2 = "Balloon";
String str3 = "Happy";
String str4 = "hai";
//string comparison using compareTo method
System.out.println(str1.compareTo(str2));
System.out.println(str3.compareTo(str4));
String str5 = "Happy";
String str6 = "Hardest one";
System.out.println(str5.compareTo(str6));
)
)

Output:

Verklaring van de bovenstaande code

  • Aangezien twee strings str1 en str2 lexicografisch gelijk zijn, wordt 0 geretourneerd.
  • Tegelijkertijd is str3 minder dan str4 en is str5 lexicografisch minder dan str6. Er wordt dus een negatieve waarde geretourneerd.

3. Is gelijk aan Negeer casusmethode

Met deze methode worden twee strings vergeleken zonder te overwegen of de string hoofdletters of kleine letters is.

Programma

//Java program to demonstrate equalsIgnoreCase method
public class StringComparisonExamples (
public static void main(String() args) (
String str1 = "Balloon";
String str2 = "balloon";
//string comparison using equalsIgnoreCase method
System.out.println(str1.equalsIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println(str3.equalsIgnoreCase(str4));
String str5 = "Happy";
String str6 = "hard";
System.out.println(str5.equalsIgnoreCase(str6));
)
)

Output:

Verklaring van de bovenstaande code

  • Omdat de methode equalsIgnoreCase wordt gebruikt, zijn str1 en str2 gelijk, ook al hebben ze verschillende hoofdletters (kleine letters en hoofdletters). Dus True wordt teruggegeven.
  • In het geval van str3 en str4, str5 en str6 zijn twee strings verschillend. Vandaar dat false wordt geretourneerd.

4. Vergelijk met Negeer casusmethode

Deze methode is vergelijkbaar met de methode CompareTo waarbij tekenreeksen lexicografisch worden vergeleken. Het verschil is dat de vergelijking niet wordt beïnvloed, ongeacht of de tekenreeksen hoofdletters of kleine letters zijn.

Programma

//Java program to demonstrate compareToIgnoreCase method
public class StringComparisonExamples (
public static void main(String() args) (
String str1 = "Balloon";
String str2 = "balloon";
//string comparison using compareToIgnoreCase method
System.out.println(str1.compareToIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println(str3.compareToIgnoreCase(str4));
String str5 = "Happy";
String str6 = "Hard";
System.out.println(str5.compareToIgnoreCase(str6));
)
)

Output:

Verklaring van de bovenstaande code

  • Hier wordt een combinatie van CompareTo en Ignorecase gedaan. Omdat zowel de str1 als de str2 gelijk zijn zonder rekening te houden met de gevallen, wordt 0 geretourneerd.
  • Op dezelfde manier wordt een positieve waarde geretourneerd als str3 groter is dan str4 en een negatieve waarde wordt geretourneerd als str5 kleiner is dan str6.

Laten we nu alle bovengenoemde methoden in een enkel programma bekijken, zodat een beter begrip kan worden verkregen met betrekking tot stringvergelijking.

Programma

//Java program to demonstrate different methods for string comparison
public class StringComparisonExamples (
public static void main(String() args) (
String str1 = "Balloon";
String str2 = "Balloon";
System.out.println("Comparison of str1 : " + str1 + " and str2 : " + str2);
System.out.println("Using equals method ");
//string comparison using equals method
if (str1.equals(str2)) (
System.out.println("Both are equal");
)
else
(
System.out.println("Both are not equal");
)
System.out.println("Using compareTo method ");
//string comparison using compareTo method
System.out.println(str1.compareTo(str2));
System.out.println("Using equalsIgnoreCase method ");
//string comparison using equalsIgnoreCase method
System.out.println(str1.equalsIgnoreCase(str2));
System.out.println("Using compareToIgnoreCase method ");
//string comparison using compareToIgnoreCase method
System.out.println(str1.compareToIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println("\nComparison of str3 : " + str3 + " and str4 : " + str4);
System.out.println("Using equals method ");
if (str3.equals(str4)) (
System.out.println("Both are equal");
)
else
(
System.out.println("Both are not equal");
)
System.out.println("Using compareTo method ");
System.out.println(str3.compareTo(str4));
System.out.println("Using equalsIgnoreCase method ");
System.out.println(str3.equalsIgnoreCase(str4));
System.out.println("Using compareToIgnoreCase method ");
System.out.println(str3.compareToIgnoreCase(str4));
String str5 = "Happy";
String str6 = "hard";
System.out.println("\nComparison of str5 : " + str5 + " and str6 : " + str6);
System.out.println("Using equals method ");
if (str5.equals(str6)) (
System.out.println("Both are equal");
)
else
(
System.out.println("Both are not equal");
)
System.out.println("Using compareTo method ");
System.out.println(str5.compareTo(str6));
System.out.println("Using equalsIgnoreCase method ");
System.out.println(str5.equalsIgnoreCase(str6));
System.out.println("Using compareToIgnoreCase method ");
System.out.println(str5.compareToIgnoreCase(str6));
)
)

Output:

Conclusie

Een string is een reeks tekens en de objecten zijn onveranderlijk. Er zijn verschillende methoden beschikbaar, zoals is gelijk aan, CompareTo, etc. beschikbaar om de tekenreeksen te vergelijken. Al deze methoden worden gebruikt op basis van de vereisten. Ze worden in de bovenstaande sectie in detail uitgelegd.

Aanbevolen artikelen

Dit is een handleiding voor String Comparison in Java. Hier bespreken we de inleiding tot stringvergelijking in Java, hoe String in Java te vergelijken samen met codes en uitgangen. U kunt ook onze andere voorgestelde artikelen doornemen voor meer informatie–

  1. Beschermd trefwoord in Java
  2. JTextArea in Java
  3. GridBagLayout in Java
  4. Array-methoden in Java