STRING
Outline Materi
• Penjelasan String
• String v Char
• Deklarasi String
• Inisialisasi String
• Menampilkan String
• Method String
• Concatenation String
• Konstruktor dan Metode pada kelas String
• Konstruktor dan Metode pada kelas StringBuffer
Pengantar String
• String merupakan tipe data untuk menyimpan
nilai berupa teks.
• String merupakan class (tipe data reference).
• Ketika variabel bertipe String dibuat, secara otomatis
compiler Java akan membuatkan sebuah object
String.
• Dalam JDK, class String disimpan dalam package
java.lang
String vs char
• String dapat menyimpan lebih dari satu karakter
(teks).
– char hanya dapat menyimpan satu karakter.
• String merupakan tipe data referensi.
– char merupakan tipe data primitif.
• Literal String di Java diapit tanda “ (double-quote).
– Literal char diapit oleh tanda ‘ (single-quote).
Deklarasi String
• Sebenarnya, ketika dideklarasikan variabel
bertipe String maka akan dibuat sebuah object.
Walaupun secara implisit tidak dituliskan new.
• Ada beberapa cara deklarasi String, diantaranya
sbb :
1. String namaVariabel;
2. String namaVariabel = nilaiString;
3. String namaVvariabel = new String(char);
4. Dll.
Deklarasi String (Bentuk 1)
• Mendeklarasikan variabel String seperti
pendeklarasian variabel biasa.
• Syntax :
String namaVariabel;
• Contoh :
String nama;
// jika ditampilkan akan mengeluarkan hasil berupa null.
(Secara otomatis akan dibuatkan object String dengan variabel reference
bernama nama).
Deklarasi String (Bentuk 2)
• Mendeklarasikan variabel String seperti instansiasi
object.
• Syntax :
String namaVar = new String();
• Contoh :
String nama = new String();
// jika ditampilkan tidak akan mengeluarkan hasil apapun
karena hanya menjalankan constructor kosong.
Deklarasi String (Bentuk 3)
• Mendeklarasikan variabel String sekaligus inisialisasi atau
pengisian nilai.
• Syntax :
String namaVar = nilai;
atau
String nama_var = new String(nilai);
• Contoh :
String nama = ”Suka Java”;
String nama = new String(”Suka Java”);
(sama-sama akan memanggil constructor yang dimiliki oleh class String untuk
menginisialisasi nilai)
Deklarasi String (Bentuk 4)
• Mendeklarasikan variabel String dan mengisinya dengan
array karakter.
• Syntax :
String namaVvar = new String(char[]);
• Contoh :
char a[]={‘a’,’b’,’c’,’d’,’e’};
String nama = new String(a);
// jika ditampilkan akan keluar hasil berupa string
abcde.
Deklarasi String (Bentuk 5)
• Mendeklarasikan variabel String dan mengisinya
dengan sub-array dari array karakter yang
dideklarasikan.
• Syntax :
String nama_var = new String(char[],int offset, int count);
• Penjelasan :
char[] = variabel bertipe array of character.
offset = index awal dari sub-array.
count = jumlah karakter yang akan diambil.
Contoh: Bentuk 5 (syntax 1)
• Contoh :
char a[]={‘a’,’b’,’c’,’d’,’e’};
String nama = new String(a,1,3);
output :bcd
//karena index array dimulai dari 0 maka dengan
offset=1 karakter awal dari sub-array adalah ‘b’.
Kemudian dengan count=3 akan mengambil 3 karakter
kekanan sehingga jika String nama ditampilkan
hasilnya bcd.
Inisialisasi String
• Untuk memberi nilai atau melakukan inisialisasi variabel bertipe
String digunakan tanda double-quote (petik ganda) yang
diletakkan diawal dan diakhir teks (nilai variabel).
• Inisialisasi bisa dilakukan ketika deklarasi maupun setelahnya.
1. Inisialisasi ketika deklarasi
Contoh : ada pada slide sebelumya (bentuk 3,4,5)
2. Inisialisasi setelah deklarasi
Contoh :
String nama; //atau bisa menggunakan new*
inisialisasi
nama = “Osama”;
*String nama = new String(“Osama”);
Menampilkan String
• Untuk menampilkan isi dari variabel String
dapat menggunakan perintah print() atau
println().
• Perbedaannya, print() menampilkan String
tanpa ganti baris, sedangkan println()
menampilkan String dengan tambahan ganti
baris diakhir String.
Method String
• Ada banyak method yang dimiliki class String,
diantaranya yang sering banyak di-implementasi
adalah :
1. length()
2. substring()
3. charAt()
4. indefOf()
5. toUpperCase()
6. toLowerCase()
length()
• Digunakan untuk mengetahui panjang String.
• Syntax : variabel_String.length();
• Contoh :
public class TestString{
String nama = "cinta Indonesia";
System.out.println(nama.length());
}
• Output : 15
Latihan
public class TestString{
String teks1 = “Aku suka java";
String teks2 = “Aku cinta Indonesia";
String teks3 = “Aku cinta PTIIK-UB";
String teks4 = “Aku suka programming“;
System.out.println(teks1.length());
System.out.println(teks2.length());
System.out.println(teks3.length());
System.out.println(teks4.length());
}
• Output ????
substring()
• Digunakan untuk mendapatkan potongan String.
• Syntax :
variabel_string.substring(indexAwal,Bataskarakter);
indexAwal = index awal sub-string.
batasKarakter= Batas karakter sub-string
• Contoh :
public class TestString{
String nama = "cinta PTIIK";
System.out.println(nama.substring(7,11));
Output : TIIK
}
Latihan
public class TestString{
String teks = “Aku cinta bahasa pemrograman java";
System.out.println(teks.substring(1,5));
System.out.println(teks.substring(5,1));
System.out.println(teks.substring(0,10));
System.out.println(teks.substring(10,teks.length()));
}
• Output ????
charAt()
• Digunakan untuk mengambil karakter dari String
pada posisi index tertentu.
• Syntax : variabel_string.charAt(index);
• Contoh :
public class TestString{
String nama = “PTIIK Univ. Brawijaya";
System.out.println(nama.charAt(9));
}
• Output : v
Latihan
public class TestString{
String teks = “Aku suka bahasa pemrograman Java";
System.out.println(teks.charAt(10));
System.out.println(teks. charAt(1));
System.out.println(teks. charAt(0));
System.out.println(teks. charAt(teks.length());
System.out.println(teks. charAt(teks.length()-1);
}
• Output ????
indexOf()
• Digunakan untuk mengetahui nilai index atau
posisi karakter tertentu pada String.
• Syntax : variabel_string.indexOf(‘karakter’);
• Contoh :
public class TestString{
String nama = “PTIIK-UB";
System.out.println(nama.indexOf(‘I’));
}
• Output : 2
(Jika terdapat karakter yang sama dalam String maka yang diambil adalah index dari
karakter yang paling kiri)
Latihan
public class TestString{
String teks = “Aku sukabahasa pemrograman java";
System.out.println(teks.indexOf(‘m’));
System.out.println(teks.indexOf(‘a’));
System.out.println(teks.indexOf(‘g’));
System.out.println(teks.indexOf(‘ ’));
}
• Output ????
toUpperCase()
• Digunakan untuk konversi atau mengubah semua
karakter String menjadi huruf besar.
• Syntax :
• Contoh :
public class TestString{
String nama = "cinta Indonesia";
System.out.println(nama.toUpperCase());
}
• Output : CINTA INDONESIA
toLowerCase()
• Digunakan untuk konversi atau mengubah semua
karakter String menjadi huruf kecil.
• Syntax :
• Contoh :
public class TestString{
String nama = “CINTA INDONESIA";
System.out.println(nama.toLowerCase());
}
• Output : cinta indonesia
Concatenation String
• Penggabungan dua String dapat dilakukan
dengan menggunakan operator + (tambah).
• Contoh :
public class TestString{
String teks1= “Aku cinta ";
String teks2= “Bahasa Java";
System.out.println(teks1 + teks2);
}
• Output : Aku cinta Bahasa Java
Konstruktor String
• String()
• String(String value)
• String(char value[])
• String(char value[], int offset, int count)
• String(byte ascii[], int hibyte, int offset, int count)
• String(byte ascii[], int hibyte)
• String(StringBuffer buffer)
Metode di String
• Int length()
• char charAt(int index)
• boolean startsWith(String prefix)
• boolean startsWith(String prefix, int toffset)
• boolean endsWith(String prefix)
• int indexOf(int ch)
• int indexOf(int ch, int fromIndex)
• int indexOf(String str)
• int indexOf(String str, int fromIndex)
• int lastindexOf(int ch)
• int lastindexOf(int ch, int fromIndex)
• int lastindexOf(String str)
• int lastindexOf(String str, int fromIndex)
Metode di String
• String substring(int beginIndex)
• String substring(int beginIndex, int endIndex)
• boolean equals(Object anObject)
• boolean equalsIgnoreCase(String anotherString)
• String concate(String str)
• String replace(char oldChar, char newChar)
• String trim()
• String toLowerCase()
• String toUpperCase()
• static String valueOf(Object obj)
• static String valueOf(char data[])
• static String valueOf(char data[]), int offset, int count)
Metode di String
• static String valueOf(boolean b)
• static String valueOf(char c)
• static String valueOf(int i)
• static String valueOf(lomg l)
• static String valueOf(float f)
• static String valueOf(double d)
Kelas StringBuffer
• Kelas StringBuffer dapat dipergunakan untuk
membuat objek string yang dapat diubah datanya.
Berbeda dengan kelas String, yang menyerupai
konstanta string pada memori.
• Perubahan nilai string di kelas StringBuffer selalu
tidak menciptakan objek string baru namun
dilakukan dengan merubah secara langsung pada
lokasi memori saat diciptakan.
Konstruktor StringBuffer
• StringBuffer()
• StringBuffer (int length)
• StringBuffer (String str)
• String(char value[], int offset, int count)
• String(byte ascii[], int hibyte, int offset, int count)
• String(byte ascii[], int hibyte)
• String(StringBuffer buffer)
Metode di StringBuffer
• int length()
• int capacity()
• synchronized void setLength(int newLength)
• synchronized char charAt(int index)
• synchronized void setCharAt(int index, char ch)
• synchronized StringBuffer append(Object obj)
• synchronized StringBuffer append(String str)
• synchronized StringBuffer append(char c)
• synchronized StringBuffer append(char str[])
• synchronized StringBuffer append(char str[], int offset,int len)
Metode di StringBuffer
• StringBuffer append()
• StringBuffer append(boolean b)
• StringBuffer append(int i)
• StringBuffer append(long l)
• StringBuffer append(float f)
• StringBuffer append(double d)
• synchronized StringBuffer insert(int offset, Object obj)
• synchronized StringBuffer insert(int offset, String str)
• synchronized StringBuffer insert(int offset, char c)
• synchronized StringBuffer insert(int offset, char str[])
Metode di StringBuffer
• StringBuffer insert(int offset, boolean b)
• StringBuffer insert(int offset, int i)
• StringBuffer insert(int offset, long l)
• StringBuffer insert(int offset, float f)
• StringBuffer insert(int offset, double d)
• String toString()
Latihan
• Cobalah semua konstruktor dan metode yang
terdapat pada kelas String dan kelas
StringBuffer dan pelajari secara seksama.