Java'daki String'i içerik ve referans bazında karşılaştırabiliriz.
İçinde kullanılır kimlik doğrulama (equals() yöntemiyle), sıralama (compareTo() yöntemiyle), referans eşleştirme (== operatörüne göre) vb.
Linux ana bilgisayarı
Java'da String'i karşılaştırmanın üç yolu vardır:
- equals() Yöntemini Kullanarak
- == Operatörünü Kullanarak
- CompareTo() Yöntemi ile
1) equals() Yöntemini Kullanarak
String sınıfı equals() yöntemi, dizenin orijinal içeriğini karşılaştırır. Eşitlik için dizenin değerlerini karşılaştırır. String sınıfı aşağıdaki iki yöntemi sağlar:
Teststringcomparison1.java
class Teststringcomparison1{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); String s4='Saurav'; System.out.println(s1.equals(s2));//true System.out.println(s1.equals(s3));//true System.out.println(s1.equals(s4));//false } }Şimdi Test Edin
Çıktı:
true true false
Yukarıdaki kodda, iki dize kullanılarak karşılaştırılır. eşittir() yöntemi Sicim sınıf. Sonuç boole değerleri olarak yazdırılır, doğru veya YANLIŞ .
Teststringcomparison2.java
class Teststringcomparison2{ public static void main(String args[]){ String s1='Sachin'; String s2='SACHIN'; System.out.println(s1.equals(s2));//false System.out.println(s1.equalsIgnoreCase(s2));//true } }Şimdi Test Edin
Çıktı:
false true
Yukarıdaki programda yöntemler Sicim sınıf kullanılır. eşittir() String nesneleri eşleşiyorsa ve her iki dize de aynı durumdaysa yöntem true değerini döndürür. equalsIgnoreCase() dizelerin durumu ne olursa olsun true değerini döndürür.
equals() yöntemi hakkında daha fazla bilgi için buraya tıklayın2) == operatörünü kullanarak
== operatörü değerleri değil referansları karşılaştırır.
Teststringcomparison3.java
class Teststringcomparison3{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3=new String('Sachin'); System.out.println(s1==s2);//true (because both refer to same instance) System.out.println(s1==s3);//false(because s3 refers to instance created in nonpool) } }Şimdi Test Edin
Çıktı:
true false
3) CompareTo() yöntemiyle dize karşılaştırması
Yukarıdaki kod, kullanımını gösterir == ikisini karşılaştırmak için kullanılan operatör Sicim nesneler.
3) CompareTo() yöntemini kullanarak
String sınıfı CompareTo() yöntemi, değerleri sözlüksel olarak karşılaştırır ve ilk dizenin ikinci dizeden küçük, ona eşit veya ondan büyük olup olmadığını açıklayan bir tamsayı değeri döndürür.
s1 ve s2'nin iki String nesnesi olduğunu varsayalım. Eğer:
Teststringcomparison4.java
class Teststringcomparison4{ public static void main(String args[]){ String s1='Sachin'; String s2='Sachin'; String s3='Ratan'; System.out.println(s1.compareTo(s2));//0 System.out.println(s1.compareTo(s3));//1(because s1>s3) System.out.println(s3.compareTo(s1));//-1(because s3 <s1 ) } < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> 0 1 -1 </pre> <a href="/java-string-compareto">Click me for more about compareTo() method</a> <hr></s1>CompareTo() yöntemi hakkında daha fazla bilgi için beni tıklayın