Anasayfa » Java ve Java Teknolojileri

Java – String Karşılaştırması (String Comparison)

16 Kasım 2012 4.472 kez okundu Yorum yok
1 Star2 Stars3 Stars4 Stars5 Stars (Henüz hiç oy kullanılmadı. İlk oyu siz verin.)
Loading...

Merhaba arkadaşlar, bu yazımda java üzerinde yapılan string karşılaştırmalarından bahsedeceğim. Bildiğiniz gibi, String tipi, java içerisinde bir sınıf yapısıdır.  Bu yüzden String sınıfından türeyen nesneler üzerinde yapılan karşılaştırmalar, normal primitive type karşılaştırmalarından biraz farklıdır. String üzerinde genel olarak kullanılan iki türlü karşılaştırma yöntemi vardır.

==  referansların karşılaştırılması için

.equals() ise değerlerin karşılaştırmasında kullanılır.

İki string aynı değere sahip olsa dahi, == ile değerler değil, iki stringin aynı obje olup olmadığına bakılır.

 

// İkisi aynı değere sahip
new String("test").equals("test") ==> true döner
 
// bu ikisi aynı obje değil
new String("test") == "test" ==> false döner 
 
// bu ikisi de aynı obje değil
new String("test") == new String("test") ==> false döner
 
// bu ikisi aynı objeye refer eder, çünkü bu iki karşılaştırma compile time da yapılır.
"test" == "test" ==> true döner
 
// String birleştirme işlemi de compile time da yapıldığı için karşılaştırma doğrudur
"test" == "te" + "st"  ==> true döner
 
// ancak .substring() işlemi run time da yapılır. Bu yüzden bu ikisi bir birine eşit değildir, nesneler karşılaştırılır.
"test" == "!test".substring(1) ==> false döner

<<< Önceki:

Sonraki: >>>


Facebookta Paylaş

Yorum Bırakın!

Yorum yaz, yada kendi sitende trackback (Geri besleme) olarak ekle. Ayrıca RSS ile bu konuya üye olabilirsin. .

Nazik olun. Temiz tutun. Konu dışına çıkmayın. Spam yaratmayın.

Bu tagları kullanabilirsiniz:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Bloğumuz gavatarı desteklemektedir. Kendi gavatarınızı edinmek için lütfen Gravatar a üye olun.