Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF atau baca online di Scribd
Anda di halaman 1/ 9
A. Pengertian String
String merupakan objek yang sering digunakan untuk menampilkan tulisan. Contoh penggunaan
string, yaitu pada penulisan perintah System. out.printin("Nama Anda’). "Nama Anda” pada pemyataan
tersebut merupakan nilai dari tipe data string. Karakteristik string antara lain sebagai berikut
1. String didefinisikan dalam Java API, yaitu pada class java.lang.String.
2. String bukan tipe data primitif, melainkan tipe data referensl.
3. Java memiliki fitur yang memungkinkan string dijalankan tanpa instansiasi.
4, Dala string menggunakan escape character, seperti pada data char. Escape character merupakan
karakter khusus yang diawali dengan tanda backslash “\".
5, Penggabungan nial string cilakukan menggunakan operator “+”. Jika operator “+” digunakan oleh
string dengan tipe data lain, tipe data selain string akan diubah secara otomatis menjadi string oleh
Java.
6. Untuk mengubah cata dari tipe string ke tipe lain, maka dilakukan manggunakan method parse() yang
dimiliki oleh setiap tipe data selain string.
7. String merupakan immutable object. Setelah ditentukan, nilainya tidak bisa diganti lagi.
‘Tipe data string merupakan tipe data spesial pada pemrograman Java karena diperlakukan secara
berbeda (tidak seperti tipe data yang lain). Dalam pemrograman Java, string merupakan aspek penting,
Karena dapat mempelajari mengenai class dan objek melalui penggunaan string, String sebenamya
merupakan class yang terdapat dalam library Java. Java String merupakan salah satu class dasar
yang disediakan oleh Java untuk memanipulasi karakter. String bukan merupakan array karakter. String
merupakan sebuah class yang memniliki beberapa method.
Coritoh:
String nama = "Nana;
System.out, printin (nama. length () 7?
n.out, printla (nama, substring (0¢2))2
sy:
Objek string nama pada kode di atas mempunyal dua buah method, yaitu method length() dan
substring(0.2).
String merupakan deretan karakter, sehingga:
st.
‘Nana’
ig nama
‘Sama dengan sintaks program berikut,
charf] arrayNama = {'n?)‘a',‘n’,
String nama = new String(arrayNama) z
CQ Femrograman Berorientast Objek — Kelas X18Dalam Java, string dimplementasikan dalam bentuk objek dengan tipe data class String. Dengan
mengimplementasikannya sebagai objek, memungkinkan Java untuk menyediakan berbagai macam
fasilitasi penanganan string yang lebih mudah digunekan, seperti membandingkan dua buah string,
konkatenasi String, mengambil karakter yang menyusun string, dan sebagainya, Tidak seperti pada objek
tainnya, Java memperlakukan string sebagai bagian dari bahasa Java. Dalam implementasinya, string
hampir cipastikan selalu dipertukan di setiap kode program. Oleh karena itu, kita perlu memahami lebih
lanjut operasi-operasi string.
Perlu diperhatikan bahwa objek dengan tipe data string yang digunakan untuk merepresentasikan
string itu sendiri bersifat immutable (read-only), yang berarti bahwa isi, suatu string tidak dapat diubah
lagi begitu isi suciah terbentuk. Kebanyakan orang berpikir bahwa penggunaan objek string akan sangat
terbalas karena sifatnya ini. Salah satu alasan mengimplementasi class String adalah untuk efisienst
dan optimasi.
stéing str = “Teknik”;
st
“teknik Komputer”;
Kode di atas tidak mengakibatkan kesalahan apa pun. Namun bukan berarti ahwa nilai pada str
telah berubah dari “Teknik” menjadi “Teknik Komputer’. Proses yang lerjadi sebagai berikut.
Gr Gq |
Gambar 1.1 Contoh immutable string
Statement pertama berfungsi untuk membuat objek string berisi tulisan “Teknik”. Objek tersebut
direferensikan ke variabel str. Pada statement kedua, dibuat objek string baru berisi tulisan “Teknik
Komputer’. Setelah itu, objek tersebut direferensikan ke str. Objek string pertama yang berisi oe
masih ada, namun sudah tidak dapat diakses lagi dan akan dibersinkan oleh garbage collectior
‘Anda tidak dapat mengubah isi objek string, namun bukan berarti Anda tidak dapat mengubah aa
dari variabel yang memegang objek string tersebut, Oleh karena itu, Anda tetap dapat menulis kode
‘seperti berikut.
“Hai Nana"?
Orang yang melihat kode di atas akan cenderuna menganggap bahwa kedua string tersebul akan
menempati lokasi memori yang sama, padahal kenyataannya, ferjadi dua kali pengalokasian memori
untuk dua buah objek string yang sama sekall berbeda. Yang pertama, untuk menampung string "Hal
Nana", adapun yang kedua untuk.menampung string “Hal semua’. Jika terlalu banyak melakukan
manipulas! string menggunakan objek class String, kemungkinan akan membuat terialu banyak objek
string di memori yang sebenamya tidak digunakan, yang pada akhimya mungkin akan memenganuhi
performa sistem secara keseluruhan. Periu diingat bahwa pengalckasian memori memerlukan wakiu dan
mempergunakan GPU, begitu juga dengan pendealokasian memori dan garbage collector akan berjalan
lebih [ama jika terlalu banyak memori yang harus dibersihkan.
Jika perlu ‘untuk mengubah string-string yang digunakan tetapi tidak ingin membuat objek string yang
baru, kita dapat mempergunakan class StringBuffer. Dengan objek class ini, kita dapat mengubah-ubah
string yang ada dj dalamnya tanpa membuat objek yang baru. Namun, kelemahan class ini adalah
tidak mendukung penggunaan literal string secara langsung, sehingga untuk memanipulasi string yar
ditampung dalam objek StringBuffer harus menggunakan method yang telah disediakan.
eke Hans ean erase aay‘Bentuk data string dalam pemrograman sangat sering digunakan. Oleh karena itu, bahasa
pemrograman Java secara khusus mendukung beberapa operasi string dalam sintaks bahasa Java
‘i sendi, sehingga penggunaan string lebih leluasa dan mudah. Harus diingat bahwa kemudahan ini
hanya beriaku untuk penggunaan class String yang ada pada package java-lang dan tidak berlaku tntuk
dlass-class lainnya.
Java mendefinisikan class String dalam package java.lang.String, sehingga tidak perlu melakukan
impor secara eksplisit. Java String digunakan untuk mendefinisikan string yang konstan (tidak bisa
berubah). Contoh dasar penggunaan class String pada Java sebagai berikut.
public class ContohString {
public static void main(String(] axgs)
String kendaraan ="Mobil”?
System. out -printin (kendaraan) ;
BUELD SUCCESSFUL (total time: 3 seconds)
4. String literal
Java mendukung nilai string literal. String literal merupakan pendekatan yang lazim dilakukan untuk
‘menciptakan string. String merupakan tipe data referensi yang mendukung nilal literal: Maka dari itu,
kita dapat langsung membuat objek string dalam program tanpa perlu secara ekspiisil menggunakan
keyword new. Kita cukup menuliskan rangkaian karakter yang diapit oleh tanda kutip ganda.
Contoh:
Karena string literal merupakan suatu objek, maka diperkenankan untuk memanggil method-method
string secara langsung.
Contoh: si
7/Mencetak panjang string
System. out printin (*Teknik”. length ()
Method length() merupakan anggota dari class String yang dapat digunakan untuk mendapatkan
panjangstring. Kode program tersebutakan menampilkan hasil6, yaitu panjang karakerdani string” Teknik’.
2. Penggabungan string
Java juga mendukung konkatenasi string secara otomatis, Konkatenasi atau penggabungan string
‘merupakan salah satu operasi yang kerap dilakukan. Dalam kasus ini, kita bisa menggunakan operator
"+" atau method concat, namun operator “+” lebih praktis dan sederhana Selain dapat melakukan
konkatenasi tehadap dua bueh objek string, kita juga dapat melakukan konkatenasi secara keseluruhan
terhadap lebih dari dua buah objek string.
Contoh:
[public static vold main(String!) args) |
String strl = “Teknik”; .
String str2 = “Informatika”;
System.out.printin(strl + str2);
System.out,printin (stri.concat (str2));Output:
Teknikinformatika
TeknikInformatika
Contoh2:
public static void main(string!] ergs) 1
String str;
str = “Rekayasa" + “Perangkat";
System.out.printin (str)?
str = “Rekayasa” + “Perangkat” + “Lunak’;
System. out.printin (ste) >
Output:
RekayasaPerangkat
RekayasaPerangkathunak
3. Format string
Pemformatan merupakan salah satu langkah yang lazim dilakukan untuk mendapatkan’ suatu
bentuk yang dinarapkan. Terkait dengan tindakan ini, Java memperkenalkan fitur baru, yaitu printf-style
> yang bisa kita manfaatkan untuk memudahkan pemformatan string, Selain menerima argumen string
yang akan diformat, method printf juga memeriukan argumen objek. Untuk mampermudah mencetak
beberapa variabel pada sebuah string, kita dapat menggunakan method printf() atau format).
Contoh:
Syatem.cut/printt(*falo ¥s, umar Anda 4d”, name, age);
} String s ~ String format ("Halo is, uinic Anda ¥d", name, age}
System. out.printin (s)
Berikut beberapa hal yang periu dipahami dalam format string,
a. Format hurut
Untuk memformat string ke huruf kecil atau besar dapat dilakukan dengan cara menyatakannya
dengan konversi s atau S. Teknik ini mirip dengan pendekatan printf di bahasa C,
Contoh:
String stri = “smk*;
String str2 ‘bisa’;
System.out.print®("4s %s in”, strl,
J /Outpits SMK bisa
b. Format alignment
Untuk mengatur posisi string dapat dilakukan melalui pendekatan printf-style. Contohnya sebagai
berikut.
(/format rata kanan, alokasi 15 karakter
System.cut .printfi"|#15s! 3n%, stelz
FfOaeput: smi]
/fPormat rate #irt, alokasi 15 karakter
System.out-printf(*|*-15s| %n”, strivy
@{Gutput: | smk I‘¢. Format ketepatan
Pendekatan printf-style juga mengizinkan untuk menentukan ketepatan pemformatan. Langkah
ini sering kali diperlukan dalam pemformatan bilangan
[
System.out.printf£("¢.25 tn, strip;
Pfoutput: sm
ij d. Argumen
‘Secara default, printf-style melakukan pemformatan sesuai urutan arqumen. Jka dipertukan, Anda
juga dapat menggunakan satu argumen untuk beberapa pemformatan. Adapun caranya dengan
‘menambahkan karakter < (kurang dari), yang menyatakan bahwa argumen sebelumnya akan
digunakan lagi.
String stri
format ika™;
aa 8 +substr2) 5
Joutput
Mengambil karakter dari string
Metode charAt() digunakan untuk mengambil karakter dari objek string pada possi indeks tertentu.
Tentunya nilai dar index harus dimulai dari 0 sampai length()-1. Sintaks umum yang digunakan sebagaiString seri = ‘Informatikas
{ char cl = strl.charAt (1);
phar 6 = strl.charAt{6):
| system.out.printin(el);
\ Systém,out.printin(cé
\
| 7 foutput:
n
2
7. Mendapatkan posis! substring
Method indaxO1() cigunakan untuk mengambil nial indeks berupa posts| karakter tertentu di dalam
objek string. Posisi karakter yang dicari adalah posisi dari karakter pertama yang: ditemul.
Contoh:
String stri = “Informatika”;
int posisil strl.indexof(‘r’);
int posisi2 = strl.indexOf("a’);
System.out.printin(posisil);
system.out.printLn (posisi2);
//output!
4
6
Nilai indeks yang dikambalikan adalah indeks dari karakter pertama yang ditemul. Misainya ada dua
buah karakter ‘a’ dalam str1, tetapi yang dikembalikan adalah posisi dari karakter ‘a’ yang pertama,
yaitu 6.
8. Konversi karakter string
Methad loUpperCase() atau tol owerCase() dipakal untuk mengonversi semua karakter di dalam
objek string menjadi huruf besar semua atau huruf kecll semua,
Gontoh:
String strl = “Informatika”;
String besar = strl.teUpperCase();
String kecil = stel.toLowexase():
System,out.printin(besar);
System.out printin(kecil);
/fourput:
INFORMATIKA
informatika
9. Menentukan awal dan akhir string
q Untuk menentukan awal dan akhir string dapat menggunakan salsh satu dari dua buah method
i berikut.
| a, starts With (String s)
Dengan method ini, maka objek string yang bersangkutan akan diperiksa, apakah diewali dengan
objek string atau tidak pada parameter method ini.
Ge Berorientas! Objek - Kelas Xil‘b, andsWith(String s)
Dengan method ini, maka objek string yang bersangkutan akan diperiksa, apakah diakhiri oleh
objek string 5 atau tidak pada parameter method ini.
‘Kedua method di atas akan menghasilkan nilai boolean true jika benar dan akan menghasilkan
nilai false jika salah,
Gontoh:
String strl = “Teknik Komputer dan Informatika’?
System. out printin(stri.startswith«*Tek"));
System.out .printin(stri.startswith ("Kom"));
system, ntin(strlvendswith ("Tek”))s
System,out.printia(strl endawith ("ka") );
J/Oxtput +
prue
false
false
true
10. Mengurutkan string
Untuk melakukan pengurutan string, kita dapat menggunakan method compareTo(). Method ini
akan membandingkan karakter-karakler pada string secara berurwtan dari awal string. Misalnya string
Pertama bernilai “a” dan string kedua bernilal "b’, maka apabila string_pertama.compareTo(string_
kedua) akan menghasilkan nilai negatif (<0) dan apabila dilakukan sebaliknya akan menghasilkan
nilai positif (>0), Nilai 0 akan dihasilkan apabila string pertama dan kedua sama.
Contoh:
Stringl] nama = ("monitor", “keyboaxd”,."harddisk”};
String temp;
System.outprintin(*sebelum diurutkan”);
for (dnt i=07 i9)'(
temp=nama [j+1]+
nama [341)=nama{j]é
nama [3] =temps
for! (int i407 icnaita length; 444)',
System,out.printin (i#1+™ “+nama[il);/jostpats
sebelum diurutkan
1 monitor
2 keyboard
3 harddisk
sesudah divrutkan
1 haxddisk
2 keyboard
3 nonitor