REFERENCE DATA TYPE (CLASS)
Kelas StringPEMBAHASAN
Class String
Inisialisasi String Operasi data String
Operasi karakter dalam String Konversi String
Class StringBuffer
Inisialisasi StringBuffer Operasi data StringBuffer
Operasi karakter dalam StringBuffer Konversi StringBuffer
Class Character
PEMBAHASAN
Class
Integer
Inisialisasi data Integer Type-casting data Integer Konversi data Integer
Class Double
Inisialisasi data Double Type-casting data Double
Konversi data Double menjadi String
Class Boolean
Inisialisasi data Boolean Konversi data Boolean
CLASS STRING :
String bukan merupakan tipe data standar dari java, sebagai gantinya java menyediakan class String dan StringBuffer untuk mengolah data string.
Pada C/C++, Sebuah data string direpresentasikan dengan 2 cara: 1. Array-of-char : memandang data string sebagai sederetan
karakter yang membentuk array, jumlah element array sudah pasti dan tidak mungkin berubah.
2. Pointer-of-char : memandang data string sebagai linked-list dari
sederetan data karakter, sifatnya lebih dinamis dengan panjang dapat berubah-ubah.
CLASS STRING :
Contoh : data string ini dapat diperlihatkan dengan menuliskan tanda (“) diawal dan diakhir string.
“Univ. Budi Luhur” “Jakarta”
dll.
Variabel dengan tipe string adalah variabel yang digunakan untuk menyimpan data string. Java menyediakan tipe data string dalam bentuk class, bukan berbetuk tipe data biasa seperti int, double maupun char. Melalui class string ini kita bisa melakukan lebih banyak proses terhadap data string, misalnya konversi data string menjadi tipe data lain.
Deklarasi variabel objek sama seperti mendeklarasikan variabel biasa, sebagai berikut:
Inisialisasi String :
Terdapat 3 cara menginisialisasikan variabel bertipekan class string ini, yaitu :
1. Inisialisasi 1 :
String abc = new String(“Contoh inisialisasi 1”); 2. Inisialisasi 2 :
String abc; …
abc = new String(“Contoh inisialisasi 2”); 3. Inisialisasi 3 :
String abc; …
abc = “Contoh inisialisasi 3”;
Biasa diinisialisasi secara langsung tanpa harus melalui construktonya
Contoh :
1. class String_1 2. {
3. public static void main(String[] args)
4. {
5. String abc = new String (“ini objek abc dari class string”);
6. String def;
7. def = new String (“ini objek def dari class string”); 8. String ghi;
9. ghi = “ini objek def dari class string”;
10.
ini objek abc dari class string ini objek def dari class string ini objek ghi dari class string
Operasi Data String :
Pada bagian ini akan dibahas beberapa metode yang disediakan oleh class String untuk memanipulasi data string (metode lengkap dapat dilihat di Java.sun.com) :
Pada kesempatan ini akan dibahas hal-hal sebagai berikut: 1. Panjang data string
2. Penggabungan data string 3. Pembandingan data string 4. Pengantian data string
5. Kapitalisasi data string 6. Sub-string
Beberapa operasi penting tersebut memiliki bentuk lebih dari satu dimana setiap bentuk membutuhkan parameter berbeda dengan bentuk lainnya. Disinilah kita dapat melihat bagaimana konsep polymorphism diterapkan.
1. Panjang data String
Panjang data atau jumlah karakter dalam suatu string bisa diketahui dengan menggunakan metode length() :
Contoh :
String abc = new String(“Universitas Budi Luhur - Jakarta”);
System.out.println(“Panjang String ABC : “ + abc.length());
2. Penggabungan data String
Untuk menggabungkan beberapa data string menjadi satu, dapat menggunakan metode concat() yang disediakan oleh class String, dimana memiliki fungsi sama dengan operator “+”
Contoh :
String abc = new String(“Kampus Pusat”);
abc = abc.concat(“ Universitas Budi Luhur – Jakarta”);
System.out.println(“String diatas akan menjadi : ” + abc);
3. Pembandingan data String
Membandingkan dua buah data string pada java seringkali membingungkan. Kita sudah terbiasa melakukan perbandingan dengan menggunakan operator relasi “==” atau “=” pada beberapa bahasa pemrograman.
Kusus java, pembandingan dua buah string tidak dapat dilakukan dengan cara diatas. Java menganggap semua entity sebagai objek termasuk string.
Untuk operasi ini java menyediakan mekanisme lain untuk membandingkan dua buah string, yaitu dengan metode
equals().
Contoh :
String abc = new String(“Budi Luhur”);
String def = new String(“Budi Luhur”);
System.out.println(“abc == def adalah “+(abc==def));
System.out.println(“abc.equals(def) adalah “+abc.equal(def));
Dari contoh diatas maka akan dicetak Output sebagai berikut:
abc == def adalah false
4. Pengantian data String
Yaitu mengubah data string yang sudah ada dengan data baru, untuk itu class string menyediakan sbb:
1. replace()
digunakan untuk mengubah karakter yang ditentukan dengan
karakter baru, yaitu dengan tanda petik tunggal. 2. replaceAll()
serupa dengan replace(), namun mengharuskan pemasukan
parameter bertipe string, yaitu dengan tanda petik ganda. metode ini juga digunakan untuk menganti sebuah
kata/prase.
3. replaceFirst().
menganti sebuah karakter, kata atau frase yang pertama kali
ketemu sesuai dengan kriteria.
Contoh:
String abc = “Jakarta”;
String xyz = “Kampus A UBL ada di Ciledug\n” + “Kampus B UBL ada di Roxy Mas\n” +
“Kampus C UBL ada di Salemba Mas\n” + “Kampus D UBL ada di Cempaka Mas\n”;
String def = abc.replace(‘a’, ‘o’);
String ghi = abc.replaceAll(“a”, “o”);
String jkl = xyz.replaceAll(“ada”, “terletak”);
String pqr = xyz.replaceFirst(“ada”, “terletak”);
5. Kapitalisasi data String
Digunakan untuk merubah data string menjadi huruf besar atau huruf kecil, lebih jelasnya sbb:
1. Metode toLowerCase()
digunakan untuk mengubah seluruh huruf dalam string menjadi huruf kecil.
2. Metode toUperCase()
digunakan untuk mengubah seluruh huruf dalam string menjadi huruf besar/kapital.
Contoh:
String abc = “Jakarta”;
String pqr = abc.toLowerCase();
String xyz = abc.toUpperCase();
6. Substring
Yaitu sebagian atau seluruh string yang diambil dari sebuah data string. Bisa berupa sebuah karakter, class string ini
menyediakan dua buah metode untuk mengambil sub-string ini yaitu:
1. Metode substring(int)
digunakan untuk mengambil sub-string yang dimulai dari posisi tertentu sampai akhir string. Java mengitung posisi karakter dalam string dimulai dari 0 (nol).
2. Metode substring(int1, int2)
digunakan untuk mengambil sub-string yang dimulai dari int
pertama sampai dengan int terakhir. Contoh:
String abc = “Universitas Budi Luhur - Jakarta”;
String pqr = abc.substring(25);
String xyz = abc.substring(12,21);
Operasi Karakter Dalam String :
Yaitu metode yang berhubungan dengan operasi karakter dalam string sbb:
1. Metode charAt(int)
digunakan untuk mengambil suatu karakter berdasarkan lokasi
yang kita berikan, membutuhkan data integer yang menyatakan lokasi karakter yang akan diambil.
Contoh :
String abc = “Universitas Budi Luhur - Jakarta”;
String xyz = abc.charAt(0)+abc.charAt(12)+abc.charAt(17);
2. Metode toCharArray()
digunakan untuk mengambil seluruh karakter lalu menyimpannya kedalam variabel bertipe array-of-char
contoh:
char[] huruf = abc.toCharArray();
Konversi Data String :
Yaitu metode yang berhubungan dengan operasi konversi data string menjadi data bertipe lain, sbb:
1. Metode valueOf()
melakukan konversi data dari tipe selain string menjadi string.
Contoh :
int i = 100;
double d = 3.14;
boolean b = true;
String abc = String.valueOf(i);
String pqr = String.valueOf(d);
String xyz = String.valueOf(b);
2. Metode toString()
melakukan konversi dari data string ke string juga. contoh:
String abc = “Universitas Budi Luhur - Jakarta”;
String xyz = abc.toString();
Model kedua ini mengadopsi konsep pointer-of-char dari bahasa C/C++. Dimana tipe data pointer adalah implementasi dari dynamic-allocation yang mengijinkan penggunaan variabel dalam jumlah besar jika diperlukan dan penghapusan variabel tersebut jika sudah tidak diperlukan lagi pada saat run-time. Fleksibelitas ini yang menyebabkan suatu data string bisa mengalami perubahan ukuran: bertambah atau berkurang.
Inisialisasi StringBuffer :
Berbeda dengan class string, bahwa data StringBuffer hanya bisa diinisialisasi melalui construktornya yaitu dengan menggunakan perintah new. Sbb:
StringBuffer abc = new StringBuffer(“Universitas Budi Luhur -
Jakarta”);
Operasi Data StringBuffer :
Pada bagian ini akan dibahas beberapa metode yang disediakan oleh class StringBuffer untuk memanipulasi data stringBuffer, dimana tidak berbeda jauh dengan Class String. Pada kesempatan ini akan dibahas hal-hal sbb:
1. Panjang data StringBuffer
2. Penambahan data StringBuffer 3. Penghapusan data StringBuffer 4. Penggantian data StringBuffer 5. Pembandingan data StringBuffer 6. Pembalikan data StringBuffer
7. Sub-string
1. Panjang data StringBuffer
metode length() : untuk mengetahui panjang data yang disimpan dalam objek StringBuffer (jumlah karakter dalam StringBuffer).
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”);
System.out.println(“Panjang String ABC : “ + abc.length());
Metode setLength() : digunakan untuk mengubah panjang data StringBuffer. Nilai parameter yang harus diberikan kedalam metode ini minimal 0 (nol).
Contoh :
abc.setLength(5);
System.out.println(abc);
2. Penambahan data StringBuffer
Data yang ada didalam StringBuffer dapat ditambahkan setiap saat dengan beberapa metode, sbb :
metode append() : menambah data baru diakhir data yang ada.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”);
abc = abc.append(“ – Jakarta”); System.out.println(abc);
Metode insert() : digunakan untuk menambah data baru disembarang posisi dalam StringBuffer.
Contoh :
abc.insert(6, “Kita “)
3. Penghapusan data StringBuffer
Data yang ada didalam StringBuffer dapat dihapus setiap saat dengan metode delete(), dimana metode ini membutuhkan dua data integer. Dimana data pertama menyatakan lokasi awal data yang mau dihapus dan data kedua menyatakan lokasi Akhir penghapusan.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); abc = abc.delete(12, 16);
System.out.println(abc);
4. Penggantian data StringBuffer
Data yang ada didalam StringBuffer dapat diganti setiap saat dengan metode replace(), dimana metode ini membutuhkan
tiga data integer.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); abc = abc.replace(1, 4, “lang Tahun”);
System.out.println(abc);
5. Pembandingan data StringBuffer
Seperti objek String, objek StringBuffer juga mempunyai metode equals(), untuk melakukan perbandingan data string.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); StringBuffer xyz = new StringBuffer(“Jakarta”);
if (abc.equals(xyz))
System.out.println(“Kedua data sama”); else
System.out.println(“Kedua data tidak sama”); System.out.println();
6. Membalikan data StringBuffer
Objek StringBuffer mempunyai metode reverse(), digunakan untuk membalikan urutan data stringbuffer, dimana karakter pertama akan menjadi karakter terakhir.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); abc.reverse();
System.out.println(abc);
7. SubString
Terdapat beberapa metode yang digunakan untuk mengambil substring dari sebuah stringbuffer. Yaitu substring(int), substring(int,int), indexOf(string).
1. metode substring(int) : untuk mengambil substring dimulai dari lokasi yang ditentukan sampai terakhir.
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); StringBuffer xyz = new StringBuffer(abc.substring(5));
2. Metode substring(int, int) : untuk mengambil substring dimulai dari lokasi awal sampai lokasi akhir yang
ditentukan.
Contoh :
StringBuffer xyz = new StringBuffer(abc.substring(5, 8));
3. Metode indexOf(String) : untuk mengetahui lokasi terjadinya
suatu substring ada didalam data string.
Contoh : int lokasi;
lokasi = abc.indexOf(“Budi”);
Operasi Karakter dalam StringBuffer :
Ada tiga metode yang berhubungan dengan proses manipulasi karakter dalam StringBuffer. Yaitu sbb:
1. metode charAt() : untuk mengambil sebuah karakter dari objek stringbuffer pada lokasi yang sudah ditentukan.
2. Metode deleteCharAt() : untuk menghapus sebuah karakter
pada lokasi yang sudah ditentukan.
3. Metode setCharAt() : untuk mengganti sebuah karakter pada
lokasi yang sudah ditentukan. Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); System.out.println(abc.charAt(5));
System.out.println(abc.deleteCharAt(5)); System.out.println(abc.setCharAt(5, ‘D’));
Konversi Data StringBuffer :
Hanya metode toString() saja yang disediakan oleh java
untuk proses konversi pada objek StringBuffer, yaitu konversi data stringbuffer menjadi string :
Contoh :
StringBuffer abc = new StringBuffer(“Univ. Budi Luhur”); String xyz = abc.toString()
Class Character dibuat untuk meningkatkan kemamupuan programmer dalam menangani tipe data karakter. Berbagai methode disiapkan untuk memanipilasi data karakter. Mulai dari memeriksa jenis karakter sampai dengan melakukan konversi tipe data karakter menjadi data lain.
Inisialisasi Data Character :
Class Character menyediakan satu constructor untuk
menginisialisasi data karakter, yaitu : constructor dengan parameter data bertipe karakter.
Contoh:
Character abc = new Character(‘R’);
Jenis-jenis Data Character :
Beberapa metode akan dibahas terutama untuk memerikasa jenis karakter saat ini, diantaranya sbb:
1. metode isDigit() : memeriksa apakah karakter yang tersimpan berjenis bilangan atau tidak.
2. metode isLetter() : memeriksa apakah karakter yang tersimpan berjenis huruf atau tidak.
3. metode isLetterOrDigit() : memeriksa apakah karakter yang
tersimpan berjenis Bilangan atau huruf atau tidak keduanya.
4. metode isWhiteSpace() : memeriksa apakah karakter yang
tersimpan berjenis spasi atau tidak.
5. metode isLowerCase() : memeriksa apakah karakter yang
tersimpan berjenis huruf kecil atau tidak.
6. metode isUpperCase() : memeriksa apakah karakter yang
tersimpan berjenis huruf besar atau tidak.
Contoh :
char abc = ‘R’;
System.out.println(“Isi abc : “ + abc)
System.out.println(“Berjenis Bilangan ? “+Character.isDigit(abc)); System.out.println(“Berjenis Huruf ? “+Character.isLetter(abc)); System.out.println(“Berjenis Huruf/Bilangan ?
“+Character.isLetterOrDigit(abc));
System.out.println(“Berjenis Spasi ? “+Character.isWhiteSpace(abc)); System.out.println(“Berjenis Huruf Kecil ?
“+Character.isLowerLetter(abc));
System.out.println(“Berjenis Huruf Besar ? “+Character.isUpperLetter(abc));
Konversi Data Character :
Terdapat empat metode yang akan dibahas pada materi ini, yaitu :
toLowerCase(), toUpperCase(), toString dan toString(char), dimana metode toString() dapat dipanggil langsung dari objek character sedangkan tiga metode lainya tidak bisa.
Metode tersebut dapat dilihat sbb:
1. metode toLowerCase() : mengkonversi menjadi huruf kecil.
2. metode toUpperCase() : mengkonversi menjadi huruf besar.
3. metode toString() : mengkonversi data karakter pada objek
character menjadi data string.
4. metode toString(char) : melakukan konversi data karakter
Character abc = new Character(‘R’); System.out.println(abc.toString());
REFERENCE DATA TYPE (CLASS)
IntegerClass Integer disediakan untuk mengolah dan memanipulasi data bertipe integer. Sejauh ini kita hanya menggunakan tipe data integer sebatas menyimpan dan mengambil data tersebut ke dan dari variabelnya, dengan kehadiran class integer ini dapat meningkatkan daya guna data bertipe integer :
Inisialisasi Data Integer :
Class integer menyediakan dua constructor untuk
menginisialisasi objek bertipe integer, yaitu Integer(int) dan Integer(String) :
1. Metode Integer(int) : untuk menginisialisasikan objek integer
dengan data integer yang dikirim sebagai parameter.
2. Metode Integer(String) : untuk menginisialisasikan objek
integer dengan data string yang dikirim sebagai parameter.
Contoh :
Integer abc = new Integer(16); Integer abc = new Integer(“16”);
Type-casting Data Integer :
Sebuah data integer tuga dapat di-type-casting sebagai data yang lain, misalnya sebagai data double atau data long. Yaitu sbb :
1.Metode doubleValue() : untuk mengembalikan nilai integer saat
ini kedalam bentu pecahan.
2.Metode intValue() : untuk mengembalikan data integer dalam
bentuk integer. Contoh :
Integer abc = new Integer(16);
System.out.println(abc.doubleValue()); System.out.println(abc.intValue());
Konversi Data Integer :
Class Integer memiliki metode parseInt() untuk menkonversi data string menjadi data integer dan beberapa metode untuk mengkonversi data integer menjadi data dalam bentuk lainnya. Diantaranya :
int xyz = Integer.parseInt(abc);
3.metode toOctalString() : mengkonversi data integer ke bentuk
octal (bilangan yang mengenal 8 angka dasar yaitu 0-7). Contoh :
int abc = 29;
System.out.println(Integer.toOctalString(abc));
4. metode toString() : mengkonversi data integer menjadi string.
Contoh :
Integer abc = new Integer(29);
System.out.println(Integer.toString(abc));
Class ini mendukung tipe data klasik double, dengan class double ini kita membahas bagaimana memanipulasi data bertipe double. :
Inisialisasi Data Double :
Class integer menyediakan dua constructor untuk menginisialisasi objek bertipe double, yaitu Double(double) dan Double(String) :
1.Metode Double(double) : untuk menginisialisasikan objek bertipe
double dengan data awal bertipe double.
2.Metode Double(String) : untuk menginisialisasikan objek bertipe
double dengan data awal bertipe string.
Contoh:
Double abc = new Double(10.5); Double abc = new Double(“10.5”);
Type-casting Data Double :
Sebuah data integer tuga dapat di-type-casting sebagai data yang lain, misalnya sebagai data double atau data long. Yaitu sbb :
1. metode intValue() : untuk mengembalikan nilai double saat
ini kedalam bentu bilangan bulat integer, atau
longValue() untuk ukuran yang lebih besar.
2. Metode DoubleValue() : untuk mengembalikan data double
dalam bentuk double. Contoh :
Double abc = new Double(16.67); System.out.println(abc.intValue());
System.out.println(abc.doubleValue());
Konversi Data Double :
Class Double memiliki metode parseDouble() dan toString() untuk menkonversi data. Yaitu sbb:
1. metode parseDouble() : mengkonversi data string menjadi data
double. Parameter yang dikirim string bukan stringbuffer. Contoh :
String abc = “16”;
double xyz = Double.parseDouble(abc);
2. metode toString() : mengkonversi data double menjadi string.
Contoh :
Double abc = new Double(16.67);
System.out.println(Double .toString(abc));
Class Boolean yang akan mendukung tipe data boolean, yang digunakan pada operasi logika, tidak banyak metode yang tersedia.
Inisialisasi Data Boolean :
Class Boolean menyediakan dua constructor untuk menginisialisasi data Boolean, yaitu : Boolean(boolean) dan Boolean(String).
1. constructor Boolean(boolean) : menginisialisasikan variabel objek Boolean dengan data boolean yang diberikan sebagai parameternya.
2. construktor Boolean(String) : menginisialisasikan variabel objek Boolean dengan data String yang diberikan sebagai parameternya.
Contoh :
Boolean abc = new Boolean(true); Boolean abc = new Boolean(“true”);
Catt :
Jika parameter yang diberikan kata-kata “true”, “false”, “tRue” atau kombinasi huruf kapital dari keduanya maka
data yang disimpan di objek Boolean akan seperti string tersebut.
Sedangkan jika string yang diberikan lain misalkan : “benar” maka nilai boolean yang tersimpan adalah false secara default.
Konversi Data Boolean :
Sehubungan dengan konversi data Boolean menjadi data lain, terdapat dua metode yang akan kita pelajari. Sbb:
1. Metode booleanValue() : konversi data dari objek data Boolean menjadi data boolean klasik.
2. Metode toString() : konversi data pada objek Boolean menjadi string. Hasil konversi adalah string “true” atau “false”.
Contoh :
Boolean abc = new Boolean(“benar”); boolean klasik = abc.booleanValue(); String string = abc.toString();