Kelas String Kelas StringBuffer Kelas Character REFERENCE DATA TYPE (CLASS) PEMBAHASAN Class String Class StringBuffer Inisialisasi String Operasi data String Operasi karakter dalam String Konversi String Inisialisasi StringBuffer Operasi data StringBuffer Operasi karakter dalam StringBuffer Konversi StringBuffer Class Character Inisialisasi data Character Jenis-jenis data Character Konversi data Charcacter 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 Pada setiap pembahasan akan diperlihatkan contoh program agar lebih bisa dipahami dengan baik. 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. Java mengadopsi kedua konsep diatas, dengan menghasilkan dua class yang bertugas menangani data string. Yaitu Class String (arrayof-char) dan Class StringBuffer (pointer-of-char). 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: String nama_objek; Class String : Inisialisasi String : Terdapat 3 cara menginisialisasikan variabel bertipekan class string ini, yaitu : 1. Inisialisasi 1 : 2. Inisialisasi 2 : 3. Inisialisasi 3 : String abc = new String(“Contoh inisialisasi 1”); String abc; … abc = new String(“Contoh inisialisasi 2”); String abc; … abc = “Contoh inisialisasi 3”; Biasa diinisialisasi secara langsung tanpa harus melalui construktonya Class String : 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. 11. System.out.println (abc); Output : 12. System.out.println (def); ini objek abc dari class string 13. System.out.println (ghi); ini objek def dari class string 14. } ini objek ghi dari class string 15. } 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. Class String : 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 “+” Class String : 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. Class 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 Abc.equals(def) adalah True Class String : 4. Pengantian data String Yaitu mengubah data string yang sudah ada dengan data baru, untuk itu class string menyediakan sbb: 1. 2. 3. replace() digunakan untuk mengubah karakter yang ditentukan dengan karakter baru, yaitu dengan tanda petik tunggal. replaceAll() serupa dengan replace(), namun mengharuskan pemasukan parameter bertipe string, yaitu dengan tanda petik ganda. metode ini juga digunakan untuk menganti sebuah kata/prase. replaceFirst(). menganti sebuah karakter, kata atau frase yang pertama kali ketemu sesuai dengan kriteria. Class String : Contoh: String abc String xyz = “Jakarta”; = “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 String String String = = = = def ghi jkl pqr abc.replace(‘a’, ‘o’); abc.replaceAll(“a”, “o”); xyz.replaceAll(“ada”, “terletak”); xyz.replaceFirst(“ada”, “terletak”); Class String : 5. Kapitalisasi data String Digunakan untuk merubah data string menjadi huruf besar atau huruf kecil, lebih jelasnya sbb: 1. 2. Contoh: Metode toLowerCase() digunakan untuk mengubah seluruh huruf dalam string menjadi huruf kecil. Metode toUperCase() digunakan untuk mengubah seluruh huruf dalam string menjadi huruf besar/kapital. String abc = “Jakarta”; String pqr String xyz = abc.toLowerCase(); = abc.toUpperCase(); Class String : 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. 2. Contoh: 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). Metode substring(int1, int2) digunakan untuk mengambil sub-string yang dimulai dari int pertama sampai dengan int terakhir. String abc String pqr String xyz = “Universitas Budi Luhur - Jakarta”; = abc.substring(25); = abc.substring(12,21); Class String : 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 menyimpannya kedalam variabel bertipe array-of-char contoh: char[] huruf = abc.toCharArray(); lalu Class String : 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 double d boolean b = 100; = 3.14; = true; String abc String pqr String xyz = String.valueOf(i); = String.valueOf(d); = String.valueOf(b); Class String : 2. Metode toString() melakukan konversi dari data string ke string juga. contoh: String abc String xyz = “Universitas Budi Luhur - Jakarta”; = abc.toString(); Class StringBuffer : Model kedua ini mengadopsi konsep pointer-of-char dari bahasa C/C++. Dimana tipe data pointer adalah implementasi dari dynamicallocation 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”); Class StringBuffer : 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 Class StringBuffer : 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); Class StringBuffer : 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 “) Class StringBuffer : 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. Class StringBuffer : 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(); Class StringBuffer : 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). Class StringBuffer : 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”); Class StringBuffer : 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’)); Class StringBuffer : 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 : 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’); Class Character : Jenis-jenis Data Character : Beberapa metode akan dibahas terutama untuk memerikasa jenis karakter saat ini, diantaranya sbb: 1. 2. 3. 4. 5. 6. metode isDigit() : memeriksa apakah karakter yang tersimpan berjenis bilangan atau tidak. metode isLetter() : memeriksa apakah karakter yang tersimpan berjenis huruf atau tidak. metode isLetterOrDigit() : memeriksa apakah karakter yang tersimpan berjenis Bilangan atau huruf atau tidak keduanya. metode isWhiteSpace() : memeriksa apakah karakter yang tersimpan berjenis spasi atau tidak. metode isLowerCase() : memeriksa apakah karakter yang tersimpan berjenis huruf kecil atau tidak. metode isUpperCase() : memeriksa apakah karakter yang tersimpan berjenis huruf besar atau tidak. Class Character : 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. Class Character : Metode tersebut dapat dilihat sbb: 1. 2. 3. 4. metode toLowerCase() : mengkonversi menjadi huruf kecil. metode toUpperCase() : mengkonversi menjadi huruf besar. metode toString() : mengkonversi data karakter pada objek character menjadi data string. metode toString(char) : melakukan konversi data karakter menjadi string. Contoh : char abc = ‘R’; System.out.println(character.toLowerCase(abc)); System.out.println(character.toUpperCase(abc)); System.out.println(character.toString(abc)); Character abc = new Character(‘R’); System.out.println(abc.toString()); CONTOH PROGRAM : KELASSTRING CONTOH PROGRAM : PANJANGSTRING CONTOH PROGRAM CONTOH PROGRAM CONTOH PROGRA M Integer Double Boolean REFERENCE DATA TYPE (CLASS) Class Integer : Class 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. Class Integer : 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()); Class Integer : 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 : 1. metode parseInt() : mengkonversi data string menjadi data integer. Parameter yang dikirim string buka stringbuffer. Contoh : String abc = “16”; int xyz = Integer.parseInt(abc); 2. metode toBinaryString() : mengkonversi data integer ke bentuk biner (0 dan 1). Contoh desimal = 29, maka binernya = 11101 Contoh : int abc = 29; System.out.println(Integer.toBinaryString(abc)); Class Integer : 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 Double : 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”); Class Double : 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()); Class Double : 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 Contoh : Double abc = new Double(16.67); System.out.println(Double .toString(abc)); string. Class Boolean : 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 objek Boolean dengan data boolean yang diberikan parameternya. 2. construktor Boolean(String) : menginisialisasikan objek Boolean dengan data String yang diberikan parameternya. variabel sebagai variabel sebagai Class Boolean : 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. Class Boolean : 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(); Contoh Program :