Uvod o primerjanju nizov v Javi

Na Javi je zaporedje znakov znano kot niz. Je nespremenljiv (ni ga mogoče spremeniti, ko je ustvarjen) in pomaga pri izvajanju več operacij. Primerjava niza je tudi običajna programska naloga na Javi. Izvedemo ga lahko na več načinov, podrobneje pa bomo razpravljali v naslednjih razdelkih.

Kako primerjati niz v Javi?

Kot smo že razpravljali, lahko primerjavo nizov izvedemo z različnimi metodami. To so:

  • Uporaba enake () metode
  • Uporaba metode сравнениеTo ()
  • Uporaba metode equalsIgnoreCase ()
  • Uporaba metode сравнениеToIgnoreCase ()

1. Enaka () metoda

metoda equals () primerja dva niza glede na vsebino niza. Če strune niso v istem primeru (tj. Zgornja ali spodnja črka), se šteje, da niso enake. Spodaj je primer metode equals ().

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

Izhod:

Pojasnilo zgornje kode

  • Tu sta dve struni str1 in str2 enaki, saj sta v istem primeru. (Primer Camel).
  • Tudi Str3 in Str4, str5 in str6 niso enaki.

2. Primerjajte z () metodo

V tej metodi se vrednosti leksikografsko primerjajo in vrnejo vrednost celega tipa. Vrednost temelji na tem, ali je prvi niz enak, manjši ali večji od 2. niza.

Prisotni sta dve struni str1 in str2 in

  • če je str1 == str2, potem 0
  • če je str1> str2, potem + ve vrednost
  • če je str1 <str2, potem -ve vrednost

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

Izhod:

Pojasnilo zgornje kode

  • Ker sta dva niza str1 in str2 leksikografsko enaka, se vrne 0.
  • Hkrati je str3 manjši od str4 in str5 je manj kot str6 leksikografsko. Torej, vrne se negativna vrednost.

3. Enaka metoda ignoriranja primera

S to metodo bomo primerjali dva niza, ne da bi upoštevali, ali je niz velik ali mali.

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

Izhod:

Pojasnilo zgornje kode

  • Ker se uporablja metoda equalsIgnoreCase, sta str1 in str2 enaka, čeprav sta v različnih primerih (majhna in velika črka). Torej, True se vrne.
  • Pri str3 in str4, str5 in str6 sta dva niza različna. Zato se lažno vrne.

4. Primerjaj z metodo ignoriranja primera

Ta metoda je podobna metodi сравнениеTo, kjer se leksikografsko primerjajo nizi. Razlika je v tem, da primerjava ne bo vplivala na to, ali so nizi v velikem ali malem sloju.

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

Izhod:

Pojasnilo zgornje kode

  • Tu je narejena kombinacija primerjaveTo in Ignorecase. Ker sta str1 in str2 enaka, ne da bi upoštevali primere, se vrne 0.
  • Podobno se vrne pozitivna vrednost, saj je str3 večji od str4, negativna vrednost pa vrnjena, saj je str5 manjši od str6.

Zdaj si oglejmo vse zgoraj omenjene metode v enem samem programu, tako da lahko dobimo boljše razumevanje glede primerjave nizov.

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

Izhod:

Zaključek

Niz je zaporedje znakov in njegovi predmeti so nespremenljivi. Za primerjavo nizov so na voljo različne metode, kot so equals, сравнениеTo itd. Vse te metode se uporabljajo na podlagi zahtev. V zgornjem razdelku so podrobno obrazloženi.

Priporočeni članki

To je vodnik za primerjavo nizov na Javi. Tukaj razpravljamo o uvodu v primerjavo nizov na Javi, kako primerjati niz v Javi skupaj s kodami in izhodi. Obiščite lahko tudi druge naše predlagane članke, če želite izvedeti več -

  1. Zaščitena ključna beseda v Javi
  2. JTextArea v Javi
  3. GridBagLayout v Javi
  4. Array Metode v Javi