String s = new String("orhan");
s.toUpperCase();
System.out.println(s)
şeklinde yazacağımız kod parçası istenilenin aksine “ORHAN” değil “orhan” yazacaktır çünki toUpperCase metodu üzerinde çalıştığı nesneye herhangi bir değişiklik yapamaz, yeni bir String nesnesi döner. İkinci satırımızı
s = s.toUpperCase();
olarak değiştirisek istenilen çıktıyı alabiliriz. Stringlerle ilgili ikinci hatırlamamız gereken konu ise karşılaştırma meselesidir. Stringler karşılaştırılırken mümkün olduğunca == ifadelerinden sakınılmalıdır. == ifadeleri referans karşılaştırması yaptığından
istenmeyen sonuçlara yol açabilirler. Örneğin :
String s = new String("orhan");
String s2 = new String("orhan");
if(s == s2)
System.out.println("true");
else
System.out.println("false");
Yukarıdaki kod parçası beklenilenin aksine false yazacaktır. Karşılaştırdığımız iki nesne bellekte farklı yerlerde bulunduğundan dolayı == karşılaştırması yanlış dönecektir. Üçüncü satırımızı :
if(s.equals(s2))
olarak değiştirirsek doğru sonucu elde ederiz. equals() metodu alfabeye göre karşılaştırma yaparak sonuca ulaşır.
Diğer veri türlerinden String tipine dönüşüm yapmak için String sınıfının statik overload metodları olan valueOf() metodları kullanılır. Örneğin :
int s = 50;
String k = String.valueOf(s);
System.out.println(k);
kod parçasında s integer değişkeninden k stringi elde edilmiştir.
Herhangi bir string nesnesinin belirli bir parçasını almak için substring() metodunu kullanabiliriz :
String s = new String("deneme");
String l = s.substring(1);
bu örnekte l string nesnemizin değeri “eneme” olacaktır. Burada substring() metodumuza ikinci parametre olarak bitiş indeksini de verebiliriz. Son olarak split() ve replace metodlarından bahsetmek istiyorum. Herhangi bir string nesnesini belirli ayraçlarla bölmek için split() metodunu kullanabiliriz. Örneğin dosyadan virgülle ayrılmış değerleri bir string nesnesine okuduğumuzu düşünelim :
String s = new String("Afyon,Bayat,İstanbul");
String[] result = s.split(",");
burada result string arrayimizde “Afyon”,”Bayat” ve “İstanbul” elemanları bulunacaktır. replace() metodu ise herhangi bir string nesnesi içinde geçen alt stringi istediğimiz başka bir stringle değiştirmeye yarar. Bu metoda özellikle HTML rapor hazırlarken şablonda gerekli yerleri doldurmada baş vurabilirsiniz. Örneğin :
String s = new String("Hava Durumu : @@@");
s = s.replace("@@@", "Bulutlu");
Son durumda s string nesnemizde “Hava Durumu : Bulutlu” değeri bulunacaktır. Bir diğer sıkca kullanılan metod contains metodudur. Contains metodu string içinde string aramaya yarar. Örneğin:
String s = new String("alt string");
s.contains("string");
buradaki ikinci ifade true değeri dönecektir.
İlgili Yazılar:
- Java Dersleri 14 – Koleksiyon API (Collection API) Kuyruklar (Queue) Koleksiyon API’sine ait diğer bir arayüz kuyruk (queue) arayüzüdür. Temel...
- Java Dersleri 13 – Koleksiyon API (Collection API) Listeler Koleksiyonlar yazılımımızda verinin hafızada nasıl tutulacağına karar veren soyut veri...
- Java Dersleri 15 – Koleksiyon API (Collection API) Map Map arayüzü anahtar-değer ikililerini bir arada tutmak için tasarlanmıştır. Matemetikteki...
- Java Dersleri 17 – JDBC API (Veritabanı Bağlantısı) Bu makalede Java’nın veritabanı kabiliyetlerinden bahsedeceğim. Java’nın tüm veritabanlarına ulaşmak...
- Java Dersleri 5 – Kalıtım (Inheritance) Bu derste Java’nın nesne yönelimli programlamanın temeli olan kalıtım(Inheritance) kavramını...

(4 oy verilmiş, ortalama: 9,75) <-- Oy Vermeden Geçme
0 Yorum.