Java Programlama. Diziler, Döngüler ve Karakter Katarları (String Sınıfı)



Benzer belgeler
Java String İşlemleri

Dizi ( Array ) ve Dizgi ( String )

NESNEYE YÖNELİK PROGRAMLAMA

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 9

Nesne Tabanlı Programlama

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Kodlanacak programlama dilinin kaynaklarından faydalanılarak kod yazımı yapılır.

Nesne Tabanlı Programlama

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

C++ Dersi: Nesne Tabanlı Programlama

while(), do-while(), for() M.İLKUÇAR 2010 MAKU-MYO

1 JAVASCRIPT NEDİR? 1

Dizi türündeki referanslar, dizi nesnelerine bağlanmaktadır. Dizi referansları tanımlamak bu dizinin hemen kullanılacağı anlamına gelmez...

String (Dizgi) İşlemleri

JAVADA DİZİ İŞLEMLERİ

İNTERNET TABANLI PROGRAMLAMA- 4.ders

Programlama Dilleri 3

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

// hataları işaret eden referans

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

String Sınıfını Yönetmek

İNÖNÜ ÜNİVERSİTESİ MÜH. FAK. BİLGİSAYAR MÜH. BÖL. ALGORİTMA VE PROGRAMLAMA 2 DERSİ LAB. ÖDEVİ

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

EMT2226 Nesne Yönelimli Programlamaya Giriş

Java Programlama Dilinde Veri Tipleri. Yrd. Doç. Dr. Aybars UĞUR

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama

2 PYTHON A GIRIŞ 13 PyCharm İle Python Projesi Oluşturma 15 Projenin Çalıştırılması 18 İlk Python Programımız 19 Açıklama Satırları 21

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

İçerik. Temel Kavramlar. Nesne Nedir? 1. Nesne : Örnek. Nesne Nedir? 2. Geçen hafta: Bu hafta: BBS-515 Nesneye Yönelik Programlama

CharArrayReader. Kılgıladığı Arayüzler: Bildirimi: Değişkenleri (fields): java.io.reader Sınıfından Kalıtsal Gelen Değişken:

Bir c sınıfının doğal sıralaması ile tutarlı olması (be consistent with equals) demek, c sınıfı içindeki her e1 ve e2 nesnesi için

D İ Z İ L E R A R R A Y S

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

Güz Yarıyılı Balıkesir Üniversitesi Bilgisayar Mühendisliği Bölümü

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

Temel Kavramlar BBS-515 Nesneye Yönelik Programlama

BİL-141 Bilgisayar Programlama I (Java)

String ve Karakter Dizileri. Yrd. Doç. Dr. Fehim KÖYLÜ Erciyes Üniversitesi Bilgisayar Mühendisliği Bölümü

YZM 2105 Nesneye Yönelik Programlama

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

Bilgisayar Programcılığı. Ögr. Gör. Cansu AYVAZ GÜVEN

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

İNTERNET TABANLI PROGRAMLAMA- 3.ders

HSancak Nesne Tabanlı Programlama I Ders Notları

Ders - 7 while döngüsü

Algoritma ve Programlamaya Giriş II JAVA İLE PROGRAMLAMA. Muhammet BAYKARA

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

ALGORİTMA VE PROGRAMLAMA I DERS NOTU#8

HSancak Nesne Tabanlı Programlama I Ders Notları

BMH-303 Nesneye Yönelik Programlama

TEMEL STRING İŞLEMLERİ

Örnek 4: Örnek Özyinelemeli fonksiyon örneği Bölüm 9. C++ programlama dilinde Nesne ve sınıf

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM

BASİT VERİ TÜRLERİ, STRİNGLER, VE KONSOL GİRİŞ/ÇIKIŞ

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

Java dili, aşağıdakiler de dahil olmak üzere çok çeşitli denetleyici türlerine sahiptir.

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

Dizgiler. C dilinde karakter m şeklinde tek tırnak içerisinde yazılan ifadelerdir. Bu karakterlerin her biri aslında bir tamsayı ile ifade edilir.

/*int sayi1, sayi2,toplam=0;

ALGORİTMA VE PROGRAMLAMA I

BİL1001 Bilgisayar Bilimlerine Giriş 1

Java da İşleçler, Ders #3 (4 Kasım 2009)

İST 264 VERİ YAPILARI Bitirme Sınavı A Grubu

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Nesne Tabanlı Programlama

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

ALGORİTMA VE PROGRAMLAMA I

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Sınıf üyeleri: değişkenler (fields) and metotlar (methods) Değişkenler: nesne içerisindeki değişkenlerdir Temel veri tipi veya sınıf tipi

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 4. UYGULAMA

Görsel Programlama 1

JAVA. public class Welcome { // class isimleri her zaman büyük harfle başlar. public static void main(string[] args){ System.out.print("Welcome"); } }

1 RUBY HAKINDA 1 Ruby nin Gelişim Hikayesi 1 Neden Ruby? 1 Neden Bu Kadar Popüler? 2

J A V A D A P R O G R A M D E N E T İ M İ V E O P E R A T Ö R L E R

DATA STRUCTURES. Part III. Sınıflar, Nesneler ve İlgili Programlama Örnekleri

Lambda İfadeleri (Lambda Expressions)

ByteArrayOutputStream

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 2

ALFASAYISAL BİLGİLER KARAKTER DİZİLERİ (STRING)

Yazılım Kodlama ve İ simlendirme Standartları v1.0

NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ

Nesne Tabanlı Programlama

ALGORİTMA VE PROGRAMLAMA I

C Programlama Dilininin Basit Yapıları

Operator Aşırı Yükleme (Operator OverLoading)

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN

Temel Veri Türü İşlemleri

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

JAVA DA GİRİŞ/ÇIKIŞ İŞLEMLERİ. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 9 1

Transkript:

Java Programlama Diziler, Döngüler ve Karakter Katarları (String Sınıfı)

Diziler (1/2) Belirli bir tipte, sınırlı sayıda değer içeren nesnelerdir Temel veri tiplerinde (int, double) veya sınıf tiplerinde (MyClass) değerler içerebilirler Örnekler: int[] arrayofints; MyClass[] arrayofobjects; Dizi uzunluğu (dizinin kaç değer içereceği) dizi oluşturma zamanında belirlenir Örnekler: arrayofints = new int[2]; arrayofobjects = new MyClass[3]; Dizi uzunluğuna length üye değişkeni ile ulaşılabilir: Örnek: arrayofints.length

Diziler (2/2) Dizi elemanlarının ilk değerlerinin atanması: {ilkdeger, ikincideger,...} Örnekler: int[] arrayofints = {10, 20}; MyClass[] arrayofobjects = {firstobj, secondobj}; Dizi üyelerine erişim: arrayname[index] Geçerli indeks değerleri: 0... arrayname.length 1 Örnekler: arrayofints[0] = 0; arrayofobjects[1].method();

Örnek: Dizi Tanımlama ve Kullanma public static void main(string[] args) { int month_days = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; } System.out.println( Nisan " + month_days[3] + " gundur.");

Döngüler For While Do-While For-Each (Gelişmiş For Döngüsü)

Diziler Üzerinde Dolaşma Gelişmiş For Gelişmiş for (enhanced for) döngüsü: indeks değişkenine gerek duymaz Kullanım: for (<type> <variable> : <array_name>) {} <type> temel veri tipleri ya da sınıf tipleri olabilir Örnek: MyClass[] array; for (MyClass item : array) { } // item dizinin o anki değerini tutar ve her adımda güncellenir

Örnek: Dizi Kullanımı Double tipinde tek boyutlu bir dizi tanımlayıp, bu dizinin elemanlarını, aralarında bir karakter boşluk ve yan yana olacak şekilde normal ve gelişmiş for döngüleri kullanarak ekrana yazdıran Java programını yazın.

Çok Boyutlu Diziler

Örnek: Çok Boyutlu Diziler Aşağıdaki çıktıyı diziler ve döngüler kullanarak oluşturan Java programını yazın. 0 1 2 3 4 5 6 7 8 9

Örnek: Çok Boyutlu Diziler (Çözüm) int twod[][] = new int[4][]; twod[0] = new int[1]; twod[1] = new int[2]; twod[2] = new int[3]; twod[3] = new int[4]; int i, j, k = 0; for (i=0; i<4; i++) for (j=0; j<i+1; j++) { } twod[i][j] = k; k++; } for (i=0; i<4; i++) { } for (j=0; j<i+1; j++) System.out.print( twod[i][j] + " "); System.out.println();

Standart Java Paketleri

String Nesneleri Java da string değişkenleri java.lang.string sınıfından türetilmiş nesnelerdir Javadoc: http://docs.oracle.com/javase/8/docs/api/java/lang/string.html Java dilinde hazır gelen string desteği: Çift tırnak içerisindeki karakterlerden String nesnesi oluşturulur Örnek: String mystring = "merhaba dünya"; + operatörü ile string birleştirme Örnek: String mystring = "merhaba " + "dünya"; + operatörü kullanılarak string değişkenler ile birleştirilen değişkenler ve sabitler otomatik olarak string nesnelerine dönüştürülürler Örnek: String strzeytin = "dün " + 2 + " kilo zeytin aldım";

Kaçış Karakterleri Kaçış Karakteri Açıklama \ddd 8 tabanında verilmiş sayıya (ddd) karşılık gelen Unicode karakter \nxxxx 16 tabanında verilmiş sayıya (xxxx) karşılık gelen Unicode karakter \ Tek tırnak \ Çift tırnak \\ Ters bölü \r Satırbaşı karakteri (carriage return) \n Yeni satır karakteri \f Sayfa başı tuşu (form feed) \t Tab \b Geri silme tuşu

String Yapıcıları (1) Varsayılan yapıcı: String s = new String(); Karakter dizisi parametresi alan yapıcı: char chars[] = {'a', 'b', 'c'}; String s = new String(chars); System.out.println(s); // abc

String Yapıcıları (2) String parametresi alan yapıcı: public static void main(string[] args) { char c[] = {'J', 'a', 'v', 'a'}; String s1 = new String(c); String s2 = new String(s1); } System.out.println(s1); System.out.println(s2);

String Yapıcıları (3) Byte dizisi alan yapıcı: public static void main(string[] args) { byte ascii[] = {65, 66, 67, 68, 69, 70}; String s1 = new String(ascii); } System.out.println(s1); // ABCDEF

String Yapıcıları (4) StringBuilder ve StringBuffer nesneleri alan yapıcılar: String(StringBuffer buffer) String(StringBuilder builder) http://docs.oracle.com/javase/8/docs/api/java/lang/stringbuffer.html http://docs.oracle.com/javase/8/docs/api/java/lang/stringbuilder.html

Karakter Çıkarma - charat String nesnesinden tek bir karakter çıkarmak için kullanılır. char ch; ch = "abc".charat(1); // b

Karakter Çıkarma getchars (1) String nesnesinden aynı anda birden fazla karakter çıkarmak için kullanılır. void getchars(int sourcestart, int sourceend, char[] target, int targetstart) sourcestart: kaynak başlangıç pozisyonu sourceend: kaynak bitiş pozisyonu target: hedef karakter dizisi targetstart: hedef başlangıç pozisyonu

Karakter Çıkarma getchars (2) String s = "This is a demo of the getchars method."; int start = 10; int end = 14; char buf[] = new char[end-start]; s.getchars(start, end, buf, 0); System.out.println(buf);

Karakter Çıkarma tochararray String nesnesindeki tüm karakterleri bir karakter dizisinin içerisine aktarır char[] tochararray();

String Nesnelerini Karşılaştırma (1) Iki string nesnesini karşılaştırmak için, nesnelerden birinin equals metodu kullanılabilir: boolean equals(object str) String nesnelerini küçük/büyük harf ayrımına bakmaksızın karşılaştırmak için: boolean equalsignorecase(string str)

String Nesnelerini Karşılaştırma (2) String s1 = "Hello"; String s2 = "Hello"; String s3 = "Good-bye"; String s4 = "HELLO"; System.out.println(s1 + " equals " + s2 + " -> " + s1.equals(s2)); System.out.println(s1 + " equals " + s3 + " -> " + s1.equals(s3)); System.out.println(s1 + " equals " + s4 + " -> " + s1.equals(s4)); System.out.println(s1 + " equalsignorecase " + s4 + " -> " + s1.equalsignorecase(s4)); ----------------------------------------------------------------------------------------------------------------------------- Hello equals Hello -> true Hello equals HELLO -> false Hello equals Good-bye -> false Hello equalsignorecase HELLO -> true

String Karşılaştırma startswith ve endswith String nesnesinin başka bir string ile başladığını ya da bittiğini test eder: boolean startswith(string str) boolean endswith(string str) "Foobar".startsWith("Foo"); "Foobar".endsWith("bar");

String Karşılaştırma compareto İki String nesnesini alfabetik olarak karşılaştırmak için kullanılır. int compareto(string str) Eğer kaynak String nesnesi str den küçükse negatif bir tamsayı, büyükse pozitif bir tamsayı döndürür. Eğer iki String nesnesi değeri aynıysa 0 döndürür. "araba".compareto("deneme"); "kitap". compareto("defter"); // negatif // pozitif

String Arama indexof ve lastindexof Bir String nesnesinin başlangıç ve bitiş noktaları arasındaki karakterleri yeni bir String nesnesi olarak döndürür. int indexof(string str) int lastindexof(string str) int indexof(string str, int startindex) int lastindexof(string str, int startindex)

String Arama Örnek String s = "Now is the time for all good men " + "to come to the aid of their country."; System.out.println("indexOf(the) = " + s.indexof("the")); System.out.println("lastIndexOf(the) = " + s.lastindexof("the")); System.out.println("indexOf(the, 10) = " + s.indexof("the", 10)); System.out.println("lastIndexOf(the, 60) = " + s.lastindexof("the", 60)); ---------------------------------------------------------------------------------------------------------------- indexof(the) = 7 lastindexof(the) = 55 indexof(the, 10) = 44 lastindexof(the, 60) = 55

String Değiştirmek substring Bir String nesnesinin başlangıç ve bitiş noktaları arasındaki karakterleri yeni bir String nesnesi olarak döndürür. String substring(int startindex) String substring(int startindex, int endindex) String s1 = "deneme".substring(1, 3); // ene String s2 = "kitap".substring(0, 3); // kita

String Değiştirmek concat İki String nesnesini concat metodu birleştirebilirsiniz. Metodun dönüş değeri birleştirilmiş String nesnesidir concat metodu yerine + operatörü kullanılabilir. String s1 = "one"; String s2 = s1.concat("two"); // onetwo String s1 = "one"; String s2 = s1 + "two ; // onetwo

String Değiştirmek trim Bir String nesnesinin başındaki ve sonundaki boşluk karakterlerini siler. String s = " Hello World ".trim(); // Hello World"

String Nesnesine Çevrim valueof Herhangi bir temel veri tipinin (double, int) veya nesnenin anlamlı bir String nesnesine dönüştürülmesini sağlar valueof nesne tipi için de aşırı yüklenmiştir ve tostring metodunun oluşturduğu değeri döndürür Bu yüzden kendi tanımladığınız sınıflar için tostring metodunu aşırı yüklememiz yeterlidir static String valueof(double num) static String valueof(char chars[]) static String valueof(int num) static String valueof(object obj) static String valueof(long num)...

Uygulama Aşağıdaki veri tiplerinde değişkenler tanımlayıp, bu değişkenlerin valueof metotlarından dönen değeleri ekrana yazarak bu metodu kullanınız int double char[] Araba sınıfı

String Nesnelerinde Büyük/Küçük Harf Dönüşümü tolowercase: String nesnesindeki bütün büyük harfleri küçük harfe dönüştürür touppercase: String nesnesindeki bütün küçük harfleri büyük harfe dönüştürür String s = "This is a test."; String upper = s.touppercase(); // THIS IS A TEST String lower = s.tolowercase; // this is a test

String Nesnelerini Birleştirmek - join Birden fazla String nesnesini, bir ayırıcı karakter kullanarak biraraya getiren statik metottur String result = String.join(" ", "Ak", "Beyaz", "Siyah"); // Ak Beyaz Siyah result = String.join(", ", "Ak", "Beyaz", "Siyah"); // Ak, Beyaz, Siyah

String Nesnelerini Parçalara Bölmek - split Bir String nesnesini, bir ayırıcı karakter kullanarak daha küçük String nesnelerine bölüp bunları bir String dizisi olarak döndüren metottur String str = "004-034556-12"; String[] parts = str.split("-"); System.out.println(parts[0]) ; // 004 System.out.println(parts[1]) ; // 034556 System.out.println(parts[2]) ; // 12

StringBuffer Sınıfı String nesneleri değiştirilemez (immutable), sabit sayıda karakter içeren nesnelerdir Daha önce gördüğümüz, String nesnesi değiştiren metotların yeni String nesneleri döndürmesinin nedeni de budur Çalışma zamanında varolan nesne üzerinde değişiklik yapmak yerine yeni nesneler oluşturulması performans açısından uygun değildir Bir karakter katarı üzerinde yoğun değişiklik yapılması gerektiği durumlarda StringBuffer sınıfı kullanılmalıdır

StringBuffer Yapıcıları Varsayılan yapıcı yeniden yerleştirmeye (relocation) engel olmak için 16 ekstra karakter: StringBuffer b = new StringBuffer(); Tamsayı parametresi alan yapıcı: StringBuffer b = new StringBuffer(10); // 16 ekstra, 16+10=26 String parametresi alan yapıcı: StringBuffer b = new StringBuffer("hello"); // 16 ekstra, 16+5=21

StringBuffer length ve capacity metotları Bir StringBuffer nesnesinin uzunluğunu ve bu nesneye ayrılan kapasiteyi öğrenmek için kullanılan metotlardır: public static void main(string[] args) { StringBuffer b = new StringBuffer("Hello"); } System.out.println("buffer = " + b); // buffer = Hello System.out.println("length = " + b.length()); // length = 5 System.out.println("capacity = " + b.capacity()); // capacity = 21

StringBuffer ensurecapasity Bir StringBuffer nesnesini oluşturulduktan sonra, ona ayrılan buffer ın genişletilmesi için kullanılır Programın akışı sırasında, cok sayıda karakterin StringBuffer nesnesine ekleneceği farkedildiğinde performansı arttırmak amacıyla kullanılabilir void ensurecapacity(int mincapacity)

StringBuffer charat ve setcharat StringBuffer nesnesi içerisinde tutulan karakterlerden, belirlenmiş bir pozisyondaki karakter alınabilir (charat) veya değiştirilebilir (setcharat) void charat(int where) void setcharat(int where, char ch) "where" belirlenen karakterin pozisyonudur.

StringBuffer Örnek public static void main(string[] args) { StringBuffer b = new StringBuffer("Hello"); System.out.println("buffer before = " + b); // buffer before = Hello System.out.println("charAt(1) before = " + b.charat(1)); // charat(1) before = e } b.setcharat(1, 'i'); b.setlength(2); System.out.println("buffer after = " + b); // buffer after = Hi System.out.println("charAt(1) after = " + b.charat(1)); // charat(1) after = i

StringBuffer getchars StringBuffer nesnesinde belirlenene iki pozisyon arasındaki karakterleri karakter dizisine kopyalamak için kullanılır void getchars(int sourcestart, int sourceend, char target[], int targetstart) sourcestart: kopyalanacak karakterlerin başlangıç noktası sourceend: kopyalanacak karakterlerin bitiş noktası target: içine karakterlerin kopyalanacağı karakter dizisi targetstart: kopyalamanın yapılacağı karakter dizisinde kopyalama için başlangıç noktası

StringBuffer append StringBuffer a herhangi bir veri tipinin karakter katarı gösteriminin eklenmesini sağlar Veri tipinin karakter katarı gösterimi, valueof metodundan elde edilir StringBuffer append(string str) StringBuffer append(int num) StringBuffer append(object obj)

StringBuffer append Örnek public static void main(string[] args) { String s; int a = 42; StringBuffer b = new StringBuffer(40); } s = sb.append("a = ").append(a).append("!").tostring(); System.out.println(s); // a = 42!

StringBuffer insert StringBuffer nesnesinin belirlenmiş pozisyonuna yeni bir karakter, tamsayı, nesne vs. eklemekte kullanılır StringBuffer insert(int index, String str) StringBuffer insert(int index, char ch) StringBuffer insert(int index, Object obj) "index" StringBuffer nesnesine ekleme yapılacak pozisyonudur

StringBuffer insert Örnek public static void main(string[] args) { StringBuffer b = new StringBuffer("I Java!"); } b.insert(2, "like "); System.out.println(b); // I like Java!

StringBuffer reverse StringBuffer nesnesindeki karakterlerin sırasını tersine çevirir public static void main(string[] args) { StringBuffer b = new StringBuffer("abcdef"); } System.out.println(b); b.reverse(); System.out.println(b); // abcdef // fedcba

StringBuffer delete ve deletecharat StringBuffer nesnesinden belirlenen bir aralıktaki karakterleri veya belirlenen bir pozisyondaki karakteri silmeye yarayan metottur StringBuffer delete(int startindex, int endindex) StringBuffer deletecharat(int index) "index", StringBuffer nesnesinden silinecek karakterin pozisyonudur. "startindex" ve "endindex", sırasıyla, silinmenin gerçekleşeceği aralığın başlangıç ve bitiş pozisyonlarıdır

StringBuffer delete ve deleteatchar Örnek public static void main(string[] args) { StringBuffer b = new StringBuffer("This is a test."); b.delete(4, 7); System.out.println("After delete: " + b); // This a test. } b.deletecharat(0); System.out.println("After deletecharat: " + b); // his a test.

StringBuffer replace StringBuffer nesnesinin belirlenen bir aralıktaki karakterlerini parametre olarak verilen bir karakter katarı ile değiştirir StringBuffer replace(int startindex, int endindex, String str) "startindex" ve "endindex", sırasıyla, silinmenin gerçekleşeceği aralığın başlangıç ve bitiş pozisyonlarıdır endindex pozisyonundaki karakter silinmez Önce varolan karakterler silinir. Daha sonra parametre olarak gönderilen karakter katarı eklenir

StringBuffer replace Örnek public static void main(string[] args) { } StringBuffer b = new StringBuffer("This is a test."); b.replace(5, 7, "was"); System.out.println("After replace: " + b); // This was a test.

StringBuffer substring StringBuffer nesnesinin belirlenen bir aralıktaki karakterlerini elde etmek için kullanılır StringBuffer substring(int startindex) StringBuffer substring(int startindex, int endindex) "startindex" ve "endindex", sırasıyla, elde edilecek karakter katarının başlangıç ve bitiş pozisyonlarıdır Eğer sadece "startindex" belirtilmişse, bu pozisyondan başlayıp StringBuffer nesnesinin son karakterine kadarlık (son karakter dahil) kısım elde edilir

StringBuffer indexof ve lastindexof StringBuffer nesnesinin içerisinde belirlenen bir karakter katarını aramak için kullanılırlar. Metot bulunan pozisyonu döndürülür. Bulunmazsa -1 döndürür. indexof nesneyi başından sonuna doğru ararken, lastindexof sondan başa doğru arama yapar StringBuffer b = new StringBuffer("one two one"); int i = b.indexof("one"); System.out.println("First index: " + i); // 0 i = b.lastindexof("one"); System.out.println("Last index: " + i); // 8

StringBuilder JDK 5 eklenmiş bir sınıftır. StringBuffer a benzer bir işleve sahiptir. StringBuffer, senkronize ve işparcacığı-güvenli (thread-safe) StringBuilder bu özelliklere sahip değil. Bu yüzden daha hızlı çalışıyor Birden fazla iş parçacığının karakter katarına erişiminin söz konusu olmadığı uygulamalarda StringBuilder kullanılmalı