Cara membandingkan dua rentetan di Java

Cara membandingkan dua rentetan di Java

Soalan - Bagaimana saya membandingkan dua rentetan dalam bahasa pengaturcaraan java?

Java menyediakan dua pilihan untuk membandingkan rentetan. Pertama ialah == operator dan kedua adalah .sama dengan () fungsi untuk rentetan java Bandingkan. Tutorial Java ini akan membantu anda memahami perbandingan rentetan di bawah java dan perbezaan antara == dan .sama dengan () untuk perbandingan rentetan di java.

  • Operator == cek untuk rujukan objek dan sepadan dengan benar jika kedua -dua rentetan tergolong objek yang sama.
  • Fungsi .sama dengan () cek untuk nilai rentetan, tidak kira objek yang mereka milik.
  • Bandingkan dua rentetan mudah

    Sekiranya kedua -dua rentetan adalah rentetan yang mudah. Java akan menganggap mereka objek yang sama. Jadi kedua -duanya (== & sama ()) akan berlaku sebagai benar.

    kelas awam StringCompare public static void main (string args []) string str1 = "hello world"; String str2 = "Hello World"; Sistem.keluar.println (str1 == str2); // mengembalikan sistem yang benar.keluar.println (str1.sama dengan (str2)); // kembali benar
    12345678910kelas awam StringCompare public static void main (string args []) string str1 = "hello world"; String str2 = "Hello World"; Sistem.keluar.println (str1 == str2); // mengembalikan sistem yang benar.keluar.println (str1.sama dengan (str2)); // kembali benar

    Bandingkan dua objek rentetan

    Sekiranya kedua -dua rentetan adalah rentetan objek. Java akan menganggap mereka berbeza-2 objek. SO == Operator akan mengembalikan fungsi palsu dan sama () akan menghasilkan benar;

    Kelas awam StringCompare public static void main (string args []) string str1 = string baru ("hello world"); String str2 = String baru ("Hello World"); Sistem.keluar.println (str1 == str2); // mengembalikan sistem palsu.keluar.println (str1.sama dengan (str2)); // kembali benar
    12345678910Kelas awam StringCompare public static void main (string args []) string str1 = string baru ("hello world"); String str2 = String baru ("Hello World"); Sistem.keluar.println (str1 == str2); // mengembalikan sistem palsu.keluar.println (str1.sama dengan (str2)); // kembali benar

    Bandingkan satu rentetan mudah dengan satu objek

    Sekiranya seseorang adalah rentetan yang mudah dan lain -lain adalah rentetan objek. Java akan menganggap mereka berbeza-2 objek. SO == Operator akan mengembalikan fungsi palsu dan sama () akan menghasilkan benar;

    kelas awam StringCompare public static void main (string args []) string str1 = "hello world"; String str2 = String baru ("Hello World"); Sistem.keluar.println (str1 == str2); // mengembalikan sistem palsu.keluar.println (str1.sama dengan (str2)); // kembali benar
    12345678910kelas awam StringCompare public static void main (string args []) string str1 = "hello world"; String str2 = String baru ("Hello World"); Sistem.keluar.println (str1 == str2); // mengembalikan sistem palsu.keluar.println (str1.sama dengan (str2)); // kembali benar

    Bandingkan dengan tali null

    Tetapi sekiranya perbandingan dengan string null == akan kembali palsu tetapi .sama dengan () fungsi akan membuang pengecualian. Untuk mengelakkan pengecualian null kita boleh menggunakan objek.sama dengan fungsi (str1, str2) seperti contoh berikut.

    Import Java.util.Objek; kelas awam StringCompare public static void main (string args []) string str1 = null; String str2 = String baru ("Hello World"); Sistem.keluar.println (str1.sama dengan (str2)); // Buang sistem pengecualian.keluar.println (objek.sama dengan (str1, str2)); // kembali palsu
    123456789101112Import Java.util.Objek; kelas awam StringCompare public static void main (string args []) string str1 = null; String str2 = String baru ("Hello World"); Sistem.keluar.println (str1.sama dengan (str2)); // Buang sistem pengecualian.keluar.println (objek.sama dengan (str1, str2)); // kembali palsu