Java EXAMPLE ile Dize Manipülasyonu

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 önemli olduğu gibi, dil sembolleri de anlam ve karar verme açısından önemlidir. Her ne kadar bilgisayar kullanıcıları tarafından görülemese de, bilgisayarlar dili arka planda bir hesap makinesi kadar hassas ve doğru bir şekilde işler. Yardım diyalogları 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özdizimine geçelim, sonuçta bunu 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:

= ;

The 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ığını kontrol edin; dize birleştirmeyi gerçekleştirmenin iki yöntemini açıklar.

İ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? “adlı bir yöntem sağladım.uzunluk“. Uzunluğu bulmanız gereken 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?

Yöntemi kullanın”karşılaştırmak”ve karşılaştırmak istediğiniz Dizeyi 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.
  • The 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!