Rumah  >  Artikel  >  Java  >  Perbandingan Rentetan di Jawa

Perbandingan Rentetan di Jawa

PHPz
PHPzasal
2024-08-30 16:27:551037semak imbas

Di Jawa, urutan aksara dikenali sebagai rentetan. Ia tidak boleh diubah (tidak boleh diubah setelah ia dibuat) dan membantu dalam melaksanakan beberapa operasi. Juga, Perbandingan String ialah tugas pengaturcaraan biasa di Jawa. Ia boleh dilakukan menggunakan beberapa cara dan ia akan dibincangkan dalam bahagian berikut secara terperinci.

Bagaimana untuk Membandingkan Rentetan dalam Java?

Seperti yang telah dibincangkan, perbandingan String boleh dilakukan menggunakan kaedah yang berbeza. Mereka ialah:

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

  • Menggunakan kaedah equals()
  • Menggunakan kaedah compareTo()
  • Menggunakan kaedah equalsIgnoreCase() 
  • Menggunakan kaedah compareToIgnoreCase() 

1. Kaedah Equals()

Kaedah

equals() membandingkan dua rentetan berdasarkan kandungan rentetan. Jika rentetan tidak dalam kes yang sama (iaitu huruf besar atau kecil), ia akan dianggap sebagai tidak sama. Di bawah ialah contoh kaedah 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");
}
}
}

Output:

Perbandingan Rentetan di Jawa

Penjelasan kod di atas

  • Di sini, dua rentetan str1 dan str2, adalah sama kerana ia daripada kes yang sama. (Sarung unta).
  • Selain itu, Str3 dan Str4, str5 dan str6 adalah tidak sama.

2. Bandingkan dengan() Kaedah

Dalam kaedah ini, nilai dibandingkan secara leksikografi dan mengembalikan nilai jenis integer. Nilai adalah berdasarkan sama ada rentetan pertama sama dengan, kurang daripada atau lebih besar daripada rentetan 2nd.

Dua rentetan str1 dan str2 hadir dan

  • jika str1 == str2 , maka 0
  • jika str1 > str2   , kemudian nilai +ve
  • jika str1 < str2   , kemudian nilai -ve

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

Output:

Perbandingan Rentetan di Jawa

Penjelasan kod di atas

  • Memandangkan dua rentetan str1 dan str2 adalah sama dari segi leksikografi, 0 dikembalikan.
  • Pada masa yang sama, str3 adalah kurang daripada str4 dan str5 adalah kurang daripada str6 dari segi leksikografi. Jadi, nilai negatif dikembalikan.

3. Sama dengan Kaedah Abaikan Kes

Menggunakan kaedah ini, dua rentetan akan dibandingkan tanpa mengambil kira sama ada rentetan itu ialah huruf besar atau huruf kecil.

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

Output:

Perbandingan Rentetan di Jawa

Penjelasan kod di atas

  • Memandangkan kaedah equalsIgnoreCase digunakan, str1 dan str2 adalah sama walaupun ia dalam kes yang berbeza (huruf kecil dan huruf besar). Jadi, True dikembalikan.
  • Dalam kes str3 dan str4, str5 dan str6, kedua-dua rentetan adalah berbeza. Oleh itu, palsu dikembalikan.

4. Bandingkan dengan Kaedah Abaikan Kes

Kaedah ini serupa dengan kaedah compareTo, di mana rentetan dibandingkan secara leksikografik. Perbezaannya ialah perbandingan tidak akan terjejas sama ada rentetan dalam huruf besar atau huruf kecil.

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

Output:

Perbandingan Rentetan di Jawa

Penjelasan kod di atas

  • Di sini, gabungan compareTo dan Ignorecase dilakukan. Oleh kerana kedua-dua str1 dan str2 adalah sama tanpa mengambil kira kes, 0 dikembalikan.
  • Begitu juga, nilai positif dikembalikan kerana str3 lebih besar daripada str4 dan nilai negatif dikembalikan kerana str5 kurang daripada str6.

Sekarang, mari kita lihat semua kaedah yang dinyatakan di atas dalam satu atur cara untuk lebih memahami perbandingan rentetan.

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

Output:

Perbandingan Rentetan di Jawa

Kesimpulan

 Rentetan ialah jujukan aksara dan objeknya tidak boleh diubah. Terdapat kaedah yang berbeza seperti equals, compareTo, dsb., tersedia untuk membandingkan rentetan. Semua kaedah ini digunakan berdasarkan keperluan. Ia diterangkan dalam bahagian di atas secara terperinci.

Atas ialah kandungan terperinci Perbandingan Rentetan di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Nombor Perdana di JawaArtikel seterusnya:Nombor Perdana di Jawa