Rumah  >  Artikel  >  Java  >  Bandingkan dua Rentetan dalam Java

Bandingkan dua Rentetan dalam Java

PHPz
PHPzasal
2024-08-30 15:34:47614semak imbas

Membandingkan rentetan dalam mana-mana bahasa pengaturcaraan adalah sangat biasa. Terdapat pelbagai cara kita boleh mencapai perbandingan rentetan dalam bahasa Pengaturcaraan Java. Kita boleh melakukan perbandingan dua rentetan dalam pelbagai cara, sama ada dengan menggunakan fungsi terbina dalam atau kod tersuai. Fungsi seperti compareTo(), compareToIgnoreCase() dan == boleh digunakan untuk tujuan perbandingan rentetan dalam Java. Terdapat beberapa fungsi terbina dalam yang boleh kita gunakan untuk membandingkan bukan sahaja rentetan tetapi juga objek. Kita boleh menggunakan compareTo() dan compareToIgnoreCase() bukan sahaja untuk perbandingan rentetan tetapi juga untuk perbandingan objek.  Kita akan melihat pelbagai contoh perbandingan rentetan dalam bahagian yang akan datang. Dalam topik ini, kita akan belajar tentang Bandingkan dua Rentetan dalam Java.

Mulakan Kursus Pembangunan Perisian Percuma Anda

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

Bagaimana Ia Berfungsi?

Kami akan mempunyai dua rentetan, katakan rentetan1 dan rentetan2. Kita boleh membandingkan rentetan ini menggunakan pelbagai medium yang tersedia dalam bahasa pengaturcaraan Java.

Menggunakan = operator,

String string1 = "Hello";
String string2 = "Hello";
if(string1 == string2){
System.out.print("Both strings are equal.");
}

output yang dapat kita lihat akan kerana Kedua-dua rentetan adalah sama.

Dengan cara yang sama, kita boleh menggunakan compareTo() sebagai fungsi sensitif huruf besar dan jika kita mahu mengabaikan perbandingan kes, kita boleh menggunakan fungsi compareToIgnoreCase().

Menggunakan compareTo()

Kami boleh menggunakan fungsi ini tanpa mengimport sebarang perpustakaan tambahan.  Untuk ini, kita akan mempunyai dua rentetan. Mari lihat kod contoh.

String string1 = "Hello World";
String string2 = "hello World";
int compare = string1.compareTo(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}

Ini akan memberikan 'String tidak sama.' sebagai output kerana rentetan adalah sama, tetapi kesnya berbeza.

Menggunakan compareToIgnoreCase()

Fungsi ini berfungsi sama seperti compare(). Ini akan diabaikan jika kesnya berbeza.

String string1 = "Hello World - 1";
String string2 = "hello World - 1";
int compare = string1.compareToIgnoreCase(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}

Keluaran fungsi di atas ialah 'Strings are equal.' kerana kami menggunakan fungsi compareToIgnoreCase(). Kita harus menggunakan teknik yang dinyatakan di atas mengikut keperluan kita.

Sintaks Bandingkan dua Rentetan dalam Java

Berikut ialah sebutan sintaks di bawah

1. int compareTo(String str)

Fungsi ini boleh digunakan untuk membandingkan dua rentetan. Jenis pengembalian fungsi ini ialah integer. Ia mengembalikan 0 jika rentetan adalah sama. compareTo ialah fungsi terbina dalam itu sendiri dalam java. str ialah rentetan yang akan kami luluskan sebagai hujah. Tetapi ini akan berfungsi jika kedua-dua kes adalah sama.

2. int compareTo(Object obj)

Dengan cara yang sama, kita boleh menggunakan objek untuk membandingkan menggunakan fungsi compareTo().

3. int compareToIgnoreCase(String str)

Fungsi ini kekal sama seperti compareTo(), tetapi ia tidak akan menyemak kes rentetan yang diberikan di antara proses.

4. int compareToIgnoreCase(Object obj)

Fungsi ini boleh digunakan untuk membandingkan dua rentetan.

Contoh Bandingkan dua Rentetan dalam Java

Berikut ialah contoh yang disebut di bawah

Contoh #1 Menggunakan = operator

Ini adalah salah satu yang paling mudah yang boleh kami gunakan untuk perbandingan rentetan. Ini ialah cara sensitif huruf besar-kecil untuk membandingkan dua rentetan. Jika kita mahu melakukan ini untuk kedua-duanya, kita boleh menghantar rentetan selepas menukar kedua-duanya dalam kes tertentu (bawah atau atas).

public class StringCompare {
public static void main(String[] args) {
String string1 = "Hello World";
String string2 = "Hello World";
if(string1 == string2){
System.out.print("Strings are equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Contoh #2 – Menggunakan = operator  (abaikan huruf besar)

Kita boleh lihat di sini dalam contoh, rentetan adalah sama, tetapi kes adalah berbeza. Jadi, kami menukar kes itu kepada huruf kecil untuk kedua-dua rentetan dahulu kemudian menggunakan operator = untuk menyelesaikan kerja.

public class StringCompare {
public static void main(String[] args) {
String string1 = "Hello World";
String string2 = "hello World";
string1.toLowerCase();
string2.toLowerCase();
if(string1 == string2){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Contoh #3 – Menggunakan compareTo (sensitif huruf besar-kecil)

String akan mempunyai teks yang sama, dan kes yang sama akan dianggap sama menggunakan fungsi ini.

public class StringCompare {
public static void main(String[] args) {
String string1 = "This is string - Hello World";
String string2 = "This is string - Hello World";
int compare = string1.compareTo(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Contoh #4- Menggunakan compareTo (kes-sensitif)

Rentetan adalah sama, tetapi kesnya berbeza dalam contoh di bawah.

public class StringCompare {
public static void main(String[] args) {
String string1 = "This is String - Hello World";
String string2 = "This is string - Hello World";
int compare = string1.compareTo(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Contoh #5- Menggunakan compareToIgnoreCase (tiada pemeriksaan kes)

Atur cara di bawah akan mengabaikan pemeriksaan kes semasa membandingkan dua rentetan.

public class StringCompare {
public static void main(String[] args) {
String string1 = "This is string - Hello World";
String string2 = "This is string - Hello World";
int compare = string1.compareToIgnoreCase(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Contoh #6- Menggunakan compareToIgnoreCase (Tiada pemeriksaan kes)

Atur cara di bawah akan mengabaikan pemeriksaan kes semasa membandingkan dua rentetan.

public class StringCompare {
public static void main(String[] args) {
String string1 = "This is String - Hello World-1";
String string2 = "this is string - Hello World-1";
int compare = string1.compareToIgnoreCase(string2);
if(compare == 0){
System.out.print("Strings are equal.");
}else{
System.out.print("Strings are not equal.");
}
}
}

Output

Bandingkan dua Rentetan dalam Java

Kesimpulan

Bahasa pengaturcaraan Java itu sendiri hadir dengan pelbagai ciri atau fungsi terbina dalam yang boleh kita gunakan dalam membandingkan dua rentetan. Kita harus menggunakan fungsi terbina dalam sehingga dan melainkan kita tidak mempunyai sebarang keperluan khusus.  Untuk membandingkan dua rentetan, kita hanya boleh menggunakan sama dengan operator (=). Pembangun harus berhati-hati menggunakan fungsi perbandingan rentetan kerana kes rentetan kadangkala boleh menjadi salah untuk sebarang program atau projek.

Atas ialah kandungan terperinci Bandingkan dua Rentetan dalam Java. 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:Java String EqualsArtikel seterusnya:Java String Equals