İçeriğe geç

String Metodları

String, Java’da karakter dizilerini temsil eden bir sınıftır.
Bir String aslında bir nesnedir (object) ve birçok hazır metot içerir.

String mesaj = "Merhaba Dünya";
System.out.println(mesaj);

String s1 = "Java"; // String literal
String s2 = new String("Java"); // new anahtar kelimesi ile

💡 String nesneleri immutable (değiştirilemez)’dir.
Yani bir String üzerinde değişiklik yaptığında aslında yeni bir nesne oluşur.


🧠 3. Sık Kullanılan String Metodları

Section titled “🧠 3. Sık Kullanılan String Metodları”
MetotAçıklamaÖrnek
length()String’in uzunluğunu döner"Java".length() → 4
charAt(int index)Belirtilen index’teki karakteri döner"Java".charAt(2) → 'v'
toUpperCase()Tüm harfleri büyük yapar"java".toUpperCase() → "JAVA"
toLowerCase()Tüm harfleri küçük yapar"JAVA".toLowerCase() → "java"
concat(String s)İki string’i birleştirir"Java".concat(" Rocks") → "Java Rocks"
contains(String s)Belirtilen metni içeriyor mu kontrol eder"Merhaba".contains("ha") → true
equals(String s)İçerik eşitliğini kontrol eder"Java".equals("java") → false
equalsIgnoreCase(String s)Büyük/küçük harf farkını yok sayar"Java".equalsIgnoreCase("java") → true
startsWith(String prefix)Belirtilen ifadeyle başlıyor mu"TestNG".startsWith("Te") → true
endsWith(String suffix)Belirtilen ifadeyle bitiyor mu"Hello.java".endsWith(".java") → true
indexOf(String s)Metindeki ilk eşleşmenin index’ini döner"Merhaba".indexOf("a") → 4
lastIndexOf(String s)Son eşleşmenin index’ini döner"Banana".lastIndexOf("a") → 5
substring(int start)Belirtilen index’ten itibaren parçalar"Merhaba".substring(3) → "haba"
substring(int start, int end)Belirli aralıktaki alt string’i döner"Merhaba".substring(0,3) → "Mer"
replace(char eski, char yeni)Karakter değiştirir"kedi".replace('e','a') → "kadi"
replace(String eski, String yeni)Metin değiştirir"Java 8".replace("8","17") → "Java 17"
trim()Baş ve sondaki boşlukları siler" Java ".trim() → "Java"
isEmpty()Boş string mi kontrol eder"".isEmpty() → true
split(String regex)Belirtilen ayırıcıya göre parçalar"elma,armut,üzüm".split(",") → ["elma","armut","üzüm"]

String kelime = "Programlama";
System.out.println("Uzunluk: " + kelime.length());
System.out.println("İlk karakter: " + kelime.charAt(0));
System.out.println("Son karakter: " + kelime.charAt(kelime.length() - 1));

String ad = "Mehmet";
String soyad = "Şimşek";
String tamAd = ad.concat(" ").concat(soyad);
System.out.println("Tam ad: " + tamAd);

String cumle = "Selenium Java Test";
String kelime = cumle.substring(9, 13);
System.out.println("Alt string: " + kelime); // "Java"

String s1 = "Test";
String s2 = "test";
System.out.println(s1.equals(s2)); // false
System.out.println(s1.equalsIgnoreCase(s2)); // true

String metin = "Bugün hava çok güzel";
System.out.println(metin.contains("hava")); // true
System.out.println(metin.startsWith("Bugün")); // true
System.out.println(metin.endsWith("kötü")); // false

String meyveler = "elma,armut,üzüm";
String[] dizi = meyveler.split(",");
for (String m : dizi) {
System.out.println(m);
}

YöntemÖrnekAçıklama
+ operatörü"Java " + "Rocks"Basit birleştirme
concat() metodu"Java".concat(" Rocks")Yöntemle birleştirme
StringBuilder / StringBufferbuilder.append("Java")Performans için tercih edilir

StringBuilder → tek thread ortamlarda hızlıdır.
StringBuffer → thread-safe (senkronize) yapıya sahiptir.

StringBuilder sb = new StringBuilder("Java");
sb.append(" Rocks!");
System.out.println(sb.toString());

KonuAçıklamaÖrnek
StringKarakter dizilerini temsil ederString ad = "Mehmet";
length()Uzunluğu döner"Java".length() → 4
substring()Alt metin alır"Merhaba".substring(3)
replace()Değer değiştirir"Test".replace("T","B")
equalsIgnoreCase()Harf duyarsız karşılaştırma"Java".equalsIgnoreCase("JAVA")

💡 Not: String işlemlerinde çok fazla birleştirme yapmanız gerekiyorsa StringBuilder kullanmak performans açısından daha verimlidir.