Junior
Bildikleriniz programlama dilinde String sınıfı hakkında bana anlat.
sobes.tech yapay zeka
AI'dan gelen yanıt
Java bağlamında, String değiştirilemez bir sınıftır ve karakter dizisini temsil eder. String nesneleri, örneğin, literal kullanılarak veya new operatörü ile oluşturulur.
Özellikler:
- Değiştirilemezlik: Bir
Stringnesnesi oluşturulduktan sonra içeriği değiştirilemez. Dizeyi değiştirdiği sanılan herhangi bir işlem (örneğin, birleştirme) aslında yeni bir dize oluşturur. Bu, akışlar ve karma tablolarıyla çalışırken güvenliği sağlar. - Dize havuzu: String literal'leri için Java JVM, özel bir bellek alanı olan dize havuzunu kullanır. Aynı içeriğe sahip bir dize havuzda zaten varsa, JVM yeni bir nesne oluşturmadan mevcut nesneye referans kullanır. Bu, bellek kullanımını optimize eder.
+operatörünün aşırı yüklenmesi: Stringler için+operatörü, birleştirme için kullanılır.- Birçok kullanışlı yöntem:
Stringsınıfı, dizelerle çalışma için zengin bir yöntem yelpazesi sağlar: uzunluk (.length()), karşılaştırma (.equals(),.equalsIgnoreCase()), alt dize arama (.contains(),.indexOf()), alt dize çıkarma (.substring()), karakter değiştirme (.replace()), büyük/küçük harfe dönüştürme (.toUpperCase(),.toLowerCase()), boşlukları kaldırma (.trim()) ve diğerleri.
Örnekler:
Dize oluşturma:
// Literal kullanımıyla - dize havuzuna yerleştirilir
String s1 = "Hello";
// new kullanımıyla - yeni bir nesne oluşturulur, havuzun dışında
String s2 = new String("World");
// Dize birleştirme
String s3 = s1 + " " + s2;
Değiştirilemezlik örneği:
String orijinal = "abc";
String değiştirildi = orijinal.concat("def"); // Yeni bir dize oluşturulur
// orijinal hâlâ "abc"
System.out.println(orijinal); // Çıktı: abc
// değiştirildi - yeni dize "abcdef"
System.out.println(değiştirildi); // Çıktı: abcdef
Önemli yöntemler:
String metin = " Example String ";
// Dizenin uzunluğu
int uzunluk = metin.length(); // 18
// Dizeleri karşılaştırma
boolean eşitMi = metin.equals(" Example String "); // true
// Büyük/küçük harf duyarsız karşılaştırma
boolean eşitMiIgnoreCase = metin.equalsIgnoreCase(" example string "); // true
// Alt dize arama
boolean içeriyorMu = metin.contains("String"); // true
int indeks = metin.indexOf("String"); // 10
// Alt dize çıkarma
String altDize = metin.substring(10, 16); // String
// Karakterleri değiştirme
String değiştirildiMetin = metin.replace(" ", "-"); // --Example-String--
// Boşlukları kaldırma
String temizlenmişMetin = metin.trim(); // Example String
String, Java'da metin bilgisi temsil etmek için yaygın olarak kullanılır ve dizeleri işlemek için temel bir sınıftır.