Introduktion til streng sammenligning i Java

I Java er en sekvens af tegn kendt som en streng. Det er uforanderligt (kan ikke ændres, når det er oprettet) og hjælper med at udføre flere handlinger. En sammenligning af streng er også en almindelig programmeringsopgave i Java. Det kan udføres på flere måder, og det vil blive drøftet i de følgende afsnit i detaljer.

Hvordan sammenlignes streng i Java?

Som allerede omtalt, kan streng-sammenligning udføres ved hjælp af forskellige metoder. De er:

  • Ved hjælp af metoden lig ()
  • Ved hjælp af metoden sammenligne ()
  • Ved hjælp af metoden equalsIgnoreCase ()
  • Ved hjælp af sammenligneToIgnoreCase () -metoden

1. Metode med lige ()

equals () -metoden sammenligner to strenge baseret på strengindholdet. Hvis strengene ikke er i samme tilfælde (dvs. store og små bogstaver), betragtes de som ikke lige. Nedenfor er et eksempel på metoden lig ().

Program

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");
)
)
)

Produktion:

Forklaring af ovenstående kode

  • Her er to strenge str1 og str2 lige, som de er af samme sag. (Kamelsag).
  • Str3 og Str4, str5 og str6 er heller ikke lige.

2. Sammenlign med () -metoden

I denne metode sammenlignes værdier leksikografisk og returnerer en værdi af heltalstypen. Værdien er baseret på, om den første streng er lig med, mindre end eller større end den 2. streng.

To strenge str1 og str2 er til stede og

  • hvis str1 == str2, så 0
  • hvis str1> str2, så + ve værdi
  • Hvis str1 <str2, så -værdien

Program

//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));
)
)

Produktion:

Forklaring af ovenstående kode

  • Da to strenge str1 og str2 er lige leksikografisk, returneres 0.
  • På samme tid er str3 mindre end str4, og str5 er mindre end str6 leksikografisk. Så returneres en negativ værdi.

3. Lig lig med ignorere sagmetode

Ved hjælp af denne metode sammenlignes to strenge uden at overveje, om strengen er store og små bogstaver.

Program

//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));
)
)

Produktion:

Forklaring af ovenstående kode

  • Da metoden EqualsIgnoreCase bruges, er str1 og str2 lige, selvom de er af forskellige tilfælde (små bogstaver og store bogstaver). Så sandt returneres.
  • Når det gælder str3 og str4, str5 og str6, er to strenge forskellige. Derfor returneres falsk.

4. Sammenlign med Ignorer sagmetode

Denne metode svarer til sammenligningsmetoden, hvor strenge sammenlignes leksikografisk. Forskellen er, at sammenligningen ikke påvirkes, uanset om strengene er med store bogstaver eller små bogstaver.

Program

//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));
)
)

Produktion:

Forklaring af ovenstående kode

  • Her udføres en kombination af sammenligne To og Ignorecase. Da både str1 og str2 er ens uden at overveje sagerne, returneres 0.
  • Tilsvarende returneres en positiv værdi, da str3 er større end str4, og en negativ værdi returneres, da str5 er mindre end str6.

Lad os nu se alle de ovennævnte metoder i et enkelt program, så der kan opnås en bedre forståelse af strengsammenligning.

Program

//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));
)
)

Produktion:

Konklusion

En streng er en sekvens af tegn, og dens objekter er uforanderlige. Der er forskellige metoder såsom lig, sammenligne osv. Tilgængelige for at sammenligne strengene. Alle disse metoder bruges på baggrund af kravene. De forklares detaljeret i ovenstående afsnit.

Anbefalede artikler

Dette er en guide til streng sammenligning i Java. Her diskuterer vi introduktionen til streng sammenligning i Java, hvordan man sammenligner streng i Java sammen med koder og output. Du kan også gennemgå vores andre foreslåede artikler for at lære mere–

  1. Beskyttet nøgleord i Java
  2. JTextArea i Java
  3. GridBagLayout i Java
  4. Array-metoder i Java

Kategori: