Introduktion om strängjämförelse i Java

I Java är en sekvens med tecken känd som en sträng. Det är oföränderligt (kan inte ändras när det har skapats) och hjälper till att utföra flera åtgärder. En jämförelse av sträng är också en vanlig programmeringsuppgift i Java. Det kan utföras på flera sätt och det kommer att diskuteras i följande avsnitt i detalj.

Hur kan man jämföra sträng i Java?

Som redan diskuterats kan String-jämförelse göras med olika metoder. Dom är:

  • Använda metoden lika ()
  • Med metoden jämförTo ()
  • Använda metoden equalsIgnoreCase ()
  • Med metoden jämförToIgnoreCase ()

1. Lika () -metod

metoden equals () jämför två strängar baserade på stränginnehållet. Om strängarna inte är i samma fall (dvs. stora och små bokstäver) kommer det att betraktas som inte lika. Nedan visas ett exempel på metoden lika ().

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:

Förklaring av koden ovan

  • Här är två strängar str1 och str2 lika som i samma fall. (Kamelfall).
  • Str3 och Str4, str5 och str6 är inte heller lika.

2. Jämför med () -metoden

I denna metod jämförs värden lexikografiskt och ger ett värde av heltalstyp. Värdet är baserat på om den första strängen är lika med, mindre än eller större än den andra strängen.

Två strängar str1 och str2 finns och

  • om str1 == str2, då 0
  • om str1> str2, då + ve värde
  • om str1 <str2, sedan -ve-värde

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:

Förklaring av koden ovan

  • Eftersom två strängar strl och str2 är lika leksikografiskt returneras 0.
  • Samtidigt är str3 mindre än str4 och str5 mindre än str6 leksikografiskt. Så, ett negativt värde returneras.

3. Lika ignorera fallmetod

Med denna metod jämförs två strängar utan att beakta om strängen är versaler eller gemener.

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:

Förklaring av koden ovan

  • Eftersom metoden equalsIgnoreCase används är str1 och str2 lika trots att de är av olika fall (små och stora bokstäver). Så sant returneras.
  • När det gäller str3 och str4, str5 och str6 är två strängar olika. Därför återlämnas falskt.

4. Jämför med Ignorera fallmetod

Denna metod liknar metoden CompareTo där strängar jämförs leksikografiskt. Skillnaden är att jämförelsen inte påverkas oavsett om strängarna är stora och små bokstäver.

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:

Förklaring av koden ovan

  • Här görs en kombination av jämförTo och Ignorecase. Eftersom både str1 och str2 är lika utan att ta hänsyn till fallen returneras 0.
  • På liknande sätt returneras ett positivt värde eftersom str3 är större än str4 och ett negativt värde returneras eftersom str5 är mindre än str6.

Låt oss nu se alla ovan nämnda metoder i ett enda program så att en bättre förståelse kan uppnås när det gäller strängjämförelse.

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:

Slutsats

En sträng är en sekvens av tecken och dess objekt är oföränderliga. För att jämföra strängarna finns det olika metoder som lika, jämföra osv. Alla dessa metoder används baserat på kraven. De förklaras i ovanstående avsnitt i detalj.

Rekommenderade artiklar

Det här är en guide för String Comparison i Java. Här diskuterar vi introduktionen till strängjämförelse i Java, hur man kan jämföra sträng i Java tillsammans med koder och utgångar. Du kan också gå igenom våra andra artiklar som föreslås för att lära dig mer–

  1. Skyddat nyckelord i Java
  2. JTextArea i Java
  3. GridBagLayout i Java
  4. Matrismetoder i Java

Kategori: