Metinler ile işlemler yaparken kullandığımız trim metodu, genel tanımlama ile String dizesinin başında ve sonunda olan boşlukları kaldıran ve boşluksuz halini kullanmamızı sağlayan bir metottur. Bu genel tanımlama, mevcut String dizesinin üzerinde bir değişiklik yapılıyormuş algısı oluşturabilir fakat durum öyle değildir. O nedenle daha iyi algılamak adına biraz detaya grelim.
Trim metodu, başında ve/veya sonunda en az bir boşluk karakteri bulunan bir String dizesine uygulandığında, dizenin başında ve sonunda boşlukların olmadığı halinden oluşan yeni bir dize oluşturup, yeni dizenin nesnesini döndürür.
Eğer uygulandığı dizenin başında ve sonunda boşluk karakteri yoksa, ya da hiç elemanı olmayan boş bir dize ise, uygulandığı dize nesnesini döndürür.
Genellikle “dizenin başında ve sonundaki boşlukları kaldırmaya yarar” cümlesiyle tanımlansa da, asıl olan orijinal dize nesnesinde bir değişiklik yapmayıp, duruma göre ya orijinal dize nesnesini, ya da başında ve sonunda boşlukları olmayan yeni bir dize nesnesi döndürdüğüdür.
Alttaki örnekte görüldüğü üzere String veri tipinde tanımlanan, başında 2, ortasında 1 ve sonunda da 3 adet boşluk olan ” Tam Weblik ” değerine sahip dize, toplamda 15 adet karakterden oluşmaktadır.
Bu dize üzerinde trim metodunu uyguladığımızda, başında ve sonunda boşluklar olmayan yeni bir dize elde ederiz. Orjinal dize aynen yukarıda olduğu gibi kalır.
public class StringTrimExample {
public static void main(String[] args) {
// Örnek 1 -----------------------------
String referans1 = " Tam Weblik ";
String referans2 = referans1.trim();
System.out.println("*" + referans2 + "*");
// Çıktısı: *Tam Weblik*
System.out.println("*" + referans1 + "*");
// Çıktısı: * Tam Weblik *
// Örnek 2 -----------------------------
String referans3 = "";
String referans4 = referans3.trim();
System.out.println(referans3 == referans4);
// Çıktısı: true
// Örnek 3 -----------------------------
String referans5 = "JAVA";
String referans6 = referans5.trim();
System.out.println(referans5 == referans6);
// Çıktısı: true
// Örnek 4 -----------------------------
String referans7 = " ";
String referans8 = referans7.trim();
System.out.println("*" + referans8 + "*");
// Çıktısı: **
System.out.println("*" + referans7 + "*");
// Çıktısı: * *
System.out.println(referans7 == referans8);
// Çıktısı: false
}
}
Yukarıdaki kod örneğinde trim metodunun kullanımı ve hangi durumlarda nasıl değerler döndürdüğü görülmektedir. Ayrıca eşitlik operatörü “==” ile yapılan karşılaştırmalarla da, ilgili değişkenlerin aynı nesnenin referansları mı yoksa farklı nesnelerin referansları mı oldukları gözlemlenebilir. Buradan da trim metodunun hangi durumlarda yeni nesne oluşturduğu, hangi durumlarda aynı nesneyi döndürdüğü takip edilebilir.