Dize Manipülasyonu Java ÖRNEKLE

⚡ Akıllı Özet

Dize Manipülasyonu Java Metni karakter dizisi olarak temsil eden String sınıfına dayanır ve metni verimli bir şekilde işlemek ve dönüştürmek için length, indexOf, charAt, compareTo, contains, replace ve case conversion gibi yerleşik yöntemler sunar.

  • 🔤 String Temelleri: A Java String, Object sınıfını genişleten String sınıfı tarafından yönetilen bir karakter dizisidir.
  • birleştirme: Dizeleri birleştirmek için `concat()` yöntemini veya `+` operatörünü kullanarak aynı sonucu elde edebilirsiniz.
  • 📏 Muayene Yöntemleri: length(), indexOf() ve charAt() fonksiyonları, karakterin boyutunu, karakter indeksini ve o konumdaki karakteri döndürür.
  • 🔎 Karşılaştırma ve Arama: compareTo(), compareToIgnoreCase() ve contains() fonksiyonları dizeleri karşılaştırır ve sıralı olup olmadığını kontrol eder.
  • ✏️ Dönüşüm: replace(), toLowerCase() ve toUpperCase() fonksiyonları, dize içeriğini ve harf büyük/küçük harf durumunu değiştirir.
  • 🔒 Değişmezlik: Dizeler nihai ve değiştirilemezdir; JVM bunları Dize Sabit Havuzunda saklar.

Dize Manipülasyonu Java

Dizeler Nelerdir? Java?

Kelimenin tam anlamıyla bir dize, bir karakter dizisidir. Hey, karakter mi dedin, bu ilkel bir veri türü değil mi? Java. Evet, teknik açıdan temel Java String temel olarak bir karakter dizisidir.

Yani yukarıdaki dizim “ROSE” aşağıdaki şekilde temsil edilebilir –

Java dizi

Neden Strings kullanılmalı?

Modern bilgisayar biliminin temel işlevlerinden biri insan dilini işlemektir.

Sayıların matematik için önemi neyse, dil sembolleri de anlam ve karar verme için önemlidir. Bilgisayar kullanıcıları tarafından görünmese de, bilgisayarlar dili arka planda bir hesap makinesi kadar hassas ve doğru bir şekilde işler. Yardım iletişim kutuları talimatlar sağlar. Menüler seçenekler sunar. Ve veri ekranları durumları, hataları ve dildeki gerçek zamanlı değişiklikleri gösterir.

Olarak Java programcı, dili depolamak ve işlemek için ana araçlarınızdan biri String sınıfı olacak.

Dize Söz Dizimi Örnekleri

Şimdi biraz söz dizimine geçelim, sonuçta bunu şu şekilde yazmamız gerekiyor: Java kod değil mi

Dize, şu şekilde temsil edilen bir karakter dizisidir:

//String is an array of characters
char[] arrSample = {'R', 'O', 'S', 'E'};
String strSample_1 = new String (arrSample);

Teknik açıdan String yukarıdaki örnekte şu şekilde tanımlanmıştır:

= new (argument);

Artık dizelerimizi her zaman diziler halinde yazamayız; dolayısıyla String'i tanımlayabiliriz Java aşağıdaki gibidir:

//Representation of String
String strSample_2 = "ROSE";

Teknik açıdan yukarıdakiler şu şekilde temsil edilir:

= ;

MKS String Sınıfı Java uzanır the Nesne sınıfı.

Dize Birleştirme:

Birleştirme, iki veya daha fazla dizenin birleştirilmesidir.

Aşağıdaki resme bir göz atın-

Dize Söz Dizimi Örnekleri

İki dizimiz var str1 = “Rock” ve str2 = “Star”

Bu iki stringi toplarsak str3= “RockStar” şeklinde bir sonuç elde etmeliyiz.

Aşağıdaki kod parçacığına göz atın; bu, dize birleştirme işlemini gerçekleştirmenin iki yöntemini açıklamaktadır.

İlki “concatString sınıfının yöntemi ve ikincisi aritmetik “+” operatörünü kullanmaktır. Her ikisi de aynı çıktıyla sonuçlanır

public class Sample_String{
  public static void main(String[] args){
//String Concatenation
String str1 = "Rock";
String str2 = "Star";
//Method 1 : Using concat
String str3 = str1.concat(str2);
System.out.println(str3);
//Method 2 : Using "+" operator
String str4 = str1 + str2;
System.out.println(str4);
}
}

Beklenen çıktı:

RockStar
RockStar

Hatırlatma Java dize yöntemleri:

Java dize yöntemleri

Hadi soralım Java String sınıfına birkaç soru sorun ve onlara cevap verip veremeyeceğini görün:

String “Uzunluk” Yöntemi

Verilen String'in uzunluğunu nasıl belirleyeceksiniz? "length" adlı bir yöntem sağladım. Uzunluğunu bulmak için ihtiyacınız olan String'e karşı kullanın.

public class Sample_String{
  public static void main(String[] args){  //Our sample string for this tutorial
  String str_Sample = "RockStar";
  //Length of a String
  System.out.println("Length of String: " + str_Sample.length());}}

Beklenen çıktı:

Length of String: 8

String “indexOf” Yöntem

Uzunluğu biliyorsam hangi karakterin hangi konumda olduğunu nasıl bulurum? Kısacası bir karakterin indeksini nasıl bulacağım?

Kendin cevapladın dostum, belirttiğin belirli bir karakterin konumunu belirlemene yardımcı olacak bir “indexOf” yöntemi var.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));
//Index of a given character
System.out.println("Index of character 'S': " + str_Sample.indexOf('S'));}}

Beklenen çıktı:

Character at position 5: t
Index of character 'S': 4

Dize “charAt” Yöntemi

Yukarıdaki soruya benzer şekilde indeks verildiğinde o konumdaki karakteri nasıl bilebilirim?

Yine basit bir tane!! “charAt” metodunu kullanın ve bulmanız gereken karakterin indeksini sağlayın.

public class Sample_String{
  public static void main(String[] args){//Character at position
String str_Sample = "RockStar";
System.out.println("Character at position 5: " + str_Sample.charAt(5));}}

Beklenen çıktı:

Character at position 5: t

String “CompareTo” Yöntemi

Bazı yöntemlerle oluşturulan Dize'nin doğrulamak istediğim bir şeye eşit olup olmadığını kontrol etmek ister miyim? İki String'i nasıl karşılaştırırım?

“compareTo” metodunu kullanın ve karşılaştırmak istediğiniz String’i belirtin.

Sonucun büyük/küçük harfe duyarlı olmasını istemiyorsanız “compareToIgnoreCase” kullanın.

Eğer argüman dizgesi bu dizgeye eşitse sonuç 0 değerine sahip olacaktır; bu dize sözlükbilimsel olarak dize bağımsız değişkeninden küçükse 0'dan küçük bir değer; ve bu dize sözlükbilimsel olarak dize bağımsız değişkeninden büyükse 0'dan büyük bir değer.

public class Sample_String{
  public static void main(String[] args){//Compare to a String
String str_Sample = "RockStar";
  System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar"));
  //Compare to - Ignore case
  System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR"));}}

Beklenen çıktı:

Compare To 'ROCKSTAR': -32
Compare To 'ROCKSTAR' - Case Ignored: 0

String “Contain” Yöntemi

Dizenin ne içermesi gerektiğini kısmen biliyorum, Dizenin belirttiğim bir karakter dizisini içerip içermediğini nasıl doğrularım?

Yöntemi kullanın”içeren”ve kontrol etmeniz gereken karakterleri belirtin.

Geri dönüşler gerçek ancak ve ancak bu dize belirtilen karakter değerleri dizisini içeriyorsa.

public class Sample_String{
  public static void main(String[] args){  //Check if String contains a sequence
String str_Sample = "RockStar";
  System.out.println("Contains sequence 'tar': " + str_Sample.contains("tar"));}}

Beklenen çıktı:

Contains sequence 'tar': true

String “endsWith” Yöntemi

Bir String'in belirli bir sonekle bitip bitmediğini nasıl doğrularım? Yine cevap verdin. “endsWith” yöntemini kullanın ve bağımsız değişkenlerde son eki belirtin.

Geri dönüşler gerçek argüman tarafından temsil edilen karakter dizisi, bu nesne tarafından temsil edilen karakter dizisinin bir son eki ise.

public class Sample_String{
  public static void main(String[] args){  //Check if ends with a particular sequence
String str_Sample = "RockStar";
  System.out.println("EndsWith character 'r': " + str_Sample.endsWith("r"));}}

Beklenen çıktı:

EndsWith character 'r': true

String “replaceAll” ve “replaceFirst” Yöntemi

String'imi birkaç yerde değiştirmek ve String'in birkaç parçasını değiştirmek istiyorum?

Java String Change, replacementAll ve replacementFirst yöntemleri. Değiştirmek istediğiniz String kısmını ve değiştirilecek String'i argümanlarda belirtebilirsiniz.

public class Sample_String{
  public static void main(String[] args){//Replace Rock with the word Duke
String str_Sample = "RockStar";
System.out.println("Replace 'Rock' with 'Duke': " + str_Sample.replace("Rock", "Duke"));}}

Beklenen çıktı:

Replace 'Rock' with 'Duke': DukeStar

dizi Java “küçük harfe” & Java “büyük harf” Yöntemi

String'imin tamamının küçük harfle mi yoksa Büyük harfle mi gösterilmesini istiyorum?

Dönüştürülmesi gereken Dizelere karşı sadece “toLowercase()” veya “ToUpperCase()” yöntemlerini kullanın.

public class Sample_String{
  public static void main(String[] args){//Convert to LowerCase
String str_Sample = "RockStar";
System.out.println("Convert to LowerCase: " + str_Sample.toLowerCase());
//Convert to UpperCase
System.out.println("Convert to UpperCase: " + str_Sample.toUpperCase());}}

Beklenen çıktı:

Convert to LowerCase: rockstar
Convert to UpperCase: ROCKSTAR

Dikkat Edilmesi Gereken Önemli Noktalar:

  • String bir Final sınıfıdır; yani değer bir kez oluşturulduktan sonra değiştirilemez. Bu nedenle String nesnelerine değişmez denir.
  • MKS Java Sanal Makine (JVM), özellikle çağrılan Dizeler için bir bellek konumu oluşturur Dize Sabit Havuzu. Bu nedenle String 'new' anahtar sözcüğü olmadan başlatılabilir.
  • Dize sınıfı altına giriyor java.lang.String hiyerarşisi. Ancak bu sınıfı içe aktarmaya gerek yoktur. Java platform bunları otomatik olarak sağlar.
  • dizi referans geçersiz kılınabilir ancak bu, içeriği silmez; yani eğer

String h1 = “merhaba”;

h1 = “merhaba”+”dünya”;

o zaman “merhaba” String silinmez. Sadece kontrolünü kaybediyor.

  • Çoklu referanslar aynı String için kullanılabilir ancak aynı yerde meydana gelir; yani eğer

String h1 = “merhaba”;

String h2 = “merhaba”;

String h3 = “merhaba”;

daha sonra bellekte 3 referanslı (h1,h2,h3) String “hello” için yalnızca bir havuz oluşturulur.

  • Eğer bir numara " " şeklinde alıntılanmıştır sonra o bir dize haline gelir, artık bir sayı değil. Bunun anlamı eğer

String S1 =”Sayı: “+ “123”+”456″;

Sistemi.dışarı.println(S1);

sonra yazdıracaktır: Sayı: 123456

Başlatma şu şekilde ise:

String S1 = “Sayı: “+(123+456);

System.out.println(S1);

sonra yazdıracaktır: Sayı: 579

Strings'e bu kadar!

SSS

Java Dizeler, güvenlik, iş parçacığı güvenliği ve performans açısından değiştirilemezdir. Değer oluşturulduktan sonra değiştirilemeyeceği için, JVM dizeleri Dize Sabit Havuzunda güvenli bir şekilde önbelleğe alabilir ve referansları paylaşabilir.

In Java== operatörü nesne referanslarını karşılaştırırken, equals() operatörü iki dizenin gerçek karakter içeriğini karşılaştırır. İki dizenin aynı değere sahip olup olmadığını kontrol etmek için equals() fonksiyonunu kullanın.

String değiştirilemezdir, oysa StringBuilder ve StringBuffer Değiştirilebilirler. DizelerBuffer Bu yöntem iş parçacığı güvenli ve senkronizedir; StringBuilder daha hızlıdır ancak iş parçacığı güvenli değildir, bu da onu tek iş parçacıklı dize manipülasyonu için ideal kılar.

Yapay zekâ kodlama asistanları, dize işleme kodu üretebilir, doğru yöntemleri önerebilir, düzenli ifadeleri açıklayabilir ve dize işlemlerinde boş işaretçi veya indeks hataları gibi hataları tespit edebilir.

Evet. Yapay zeka araçları yazabilir. Java Değiştirme, kırpma ve büyük/küçük harf dönüştürme gibi yöntemler kullanarak metni temizleyen, biçimlendiren ve dönüştüren bir kod yazın ve ardından her adımı öğrenciler için açıklayın.

Bu yazıyı şu şekilde özetleyin: