Pemrograman Berorientasi Objek 1 KELASKELAS DASAR Pemrograman Berorientasi
Pemrograman Berorientasi Objek 1 KELAS-KELAS DASAR
Pemrograman Berorientasi Objek 1 KELAS-KELAS DASAR �kelas String, �kelas String Buffer, �kelas math, �kelas character, �kelas number, �dan lain-lain.
Pemrograman Berorientasi Objek 1 KELAS-KELAS DASAR Di java suatu string adalah objek Ada dua kelas string : ◦ kelas String. Buffer
Kelas String Pemrograman Berorientasi Objek 1 7 cara untuk membuat objek String : ◦ ◦ ◦ ◦ String(); // cara 1 String(String value); // cara 2 String(char value[]); // cara 3 String(byte ascii[], int hibyte); // cara 4 String(char value[], int offset, int count); // cara 5 String(byte ascii[], int hibyte, int offset, int count); //cara 6 String(String. Buffer buffer); // cara 7
Kelas String Pemrograman Berorientasi Objek 1 Ada 33 method yang digunakan untuk melakukan 8 macam operasi pada kelas String, yaitu : 1. int length; 2. char. At(int index); 3. boolean starts. With(String prefix); 4. boolean starts. With(String prefix, int tooffset); 5. boolean ends. With(String suffix); 6. int index. Of(int i); 7. int index. Of(int i, int from. Index); 8. int index. Of(String str); 9. int index. Of(String str, int from. Index); 10. int last. Index. Of(int i);
Kelas String Pemrograman Berorientasi Objek 1 11. int last. Index. Of(int i, int from. Index); 12. int last. Index. Of(String str); 13. int last. Index. Of(String str, int from. Index); 14. String substring(int begin. Index); 15. String substring(int begin. Index, int end. Index); 16. boolean equels(Object an. Object); 17. boolean equels. Ignore. Case(String a. String); 18. int compare. To(String str); 19. int compare. To(Object an. Object); 20. String concat(String s);
Kelas String 21. 22. 23. 24. 25. 26. 27. Pemrograman Berorientasi Objek 1 String replace(char old. Char, char new. Char); String trim(); String to. Lower. Case(); String to. Upper. Case(); static String value. Of(Object an. Object); static String value. Of(char ch[], int offset, int count); 28. static String value. Of(boolean b); 29. static String value. Of(char ch); 30. static String value. Of(int i);
Kelas String 31. static String value. Of(long l); 32. static String value. Of(float f); 33. static String value. Of(double d); Pemrograman Berorientasi Objek 1
Kelas String Pemrograman Berorientasi Objek 1 Ada 8 operasi pada kelas String, yaitu : ◦ ◦ ◦ ◦ Membuat dan menginisialisasi String Membaca character dalam String Membandingkan dua String Mengubah character kecil menjadi capital Concatenation dua String Mencari character dan substring Mengambil suatu substring Menggantikan suatu character dalam String
Pemrograman Berorientasi Objek 1 Kelas Math dan Kelas Strict. Math ◦ Kelas Math berisi sekumpulan method dan konstanta matematika. ◦ kelas Strinct. Math yang berisi sekumpulan methodmatematika yang lengkap (lebih lengkap darikelas Math).
Pemrograman Berorientasi Objek 1 Method-method di kelas Math : ◦ ◦ ◦ ◦ ◦ static double to. Radians(double sudut); static double to. Degrees(double sudut); static double sin(double d); static double cos(double d); static double tan(double d); static double asin(double d); static double acos(double d); static double atan(double d); static double exp(double d); // e pangkat d static double log(double d); // ln(d); static double sqrt(double d); //static double pow(double a, double b); // a pangkat b static double ceil(double d); // pembulatan ke atas static double floor(double d); //pembulatan ke bawah static int round(float f); // pembulatan biasa static long round(double d); // pembulatan biasa static double rint(double d); // pembulatan ke int terdekat static double atan 2(double a, double b); //cartesius ke polar
Pemrograman Berorientasi Objek 1 Method-method di kelas Math : ◦ ◦ ◦ ◦ static synchronized double random(); static int abs(int i); static long abs(long l); static float abs(float f); static double abs(double d); static int min(int a, int b); static long min(long a, long b); static float min(float a, float b); static double min(double a, double b); static int max(int a, int b); static long max(long a, long b); static float max(float a, float b); static double max(double a, double b); Math. E=2. 7…; Math. PI=3. 14…;
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper • Sembilan tipe data dasar (boolean, byte, char, double, float, int, long, short, void) di java tidak diimplementasikan sebagai kelas. • Tipe data tsb hanya dilewatkan sebagai parameter ke suatu method dgn cara pass by value dan tidak bisa dgn cara pass by reference. • Kelas wrapper bertindak sebagai versi kelas dari tipe data dasar, yang namanya serupa namun diawali huruf kapital. • Kelas ini membungkus tipe data primitif agar mereka dapat digunakan sebagaimana layaknya objek biasa.
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper kelas tipe data wrapper di java ada 10 : ◦ Boolean ◦ Byte ◦ Character ◦ Double ◦ Float ◦ Integer ◦ Long ◦ Number ◦ Short ◦ Void
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper 1. Kelas Number Kelas ini bersifat abstract serta mendefinisikan super kelas yang diimplementasikan oleh kelas-kelas yang membungkus tipe data dasar (6 subclass). Method-method dari kelas Number : ◦ byte. Value(); ◦ double. Value(); ◦ float. Value(); ◦ int. Value(); ◦ long. Value(); ◦ short. Value();
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper 2. Kelas Boolean Kelas ini membungkus tipe data dasar Boolean. Memiliki dua constructor : ◦ Boolean(Boolean bool. Value); ◦ Boolean(String bool. String); Method-method di kelas ini adalah : ◦ boolean. Value(); ◦ boolean equels(Object bool. Obj); ◦ static boolean get. Boolean(String property. Name); ◦ int hash. Code(); ◦ String to. String(); ◦ Static boolean value. Of(String bool. String);
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper 3. Kelas Character Kelas ini membungkus tipe data dasar dan memiliki beberapa method : static int digit(char ch, int radix);
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper 4. Kelas Byte, Short, Integer, dan Long Method-method di kelas Byte adalah : ◦ byte. Value(); ◦ int compare. To(Byte b); ◦ int compare. To(Object obj); dll. Method-method di kelas Short : ◦ byte. Value(); ◦ int compare. To(Short sh); dll. Method-method di kelas Integer : ◦ byte. Value(); ◦ int compare. To(Integer i); dll. Method-method di kelas Long adalah : ◦ int compare. To(Long obj); ◦ int compare. To(Object obj);
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper 5. Kelas Float dan Double Method-method di kelas Float : ◦ byte. Value(); ◦ int compare. To(Float f); ◦ double. Value(); dll. Method-method di kelas Double : ◦ int compare. To(Double d); ◦ byte. Value(); ◦ int compare. To(Object obj);
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper Kelas Float memiliki beberapa attribut yang bersifat final dan static (konstanta) Nama Konstanta Deskripsi MINVALUE Nilai terkecil objek Float MAXVALUE Nilai terbesar objek Float NEGATIVE_INFINITY Angka tak berhingga negatif POSITIVE_INFINITY Angka tak berhingga positif Na. N Kondisi bukan angka
Pemrograman Berorientasi Objek 1 Kelas-Kelas Tipe Data Wrapper �Contoh penggunaan : Byte num 1 = new Byte(“ 100”); Short num 2 = new Short(“ 100”); Integer num 3 = new Integer(100); Long num 4 = new Long(100);
STRING
PENGERTIAN STRING � Obyek yang terdiri atas deretan karakter � Tidak perlu ditentukan jumlah karakternya � Inisialisasi : ◦ Langsung tanpa kata kunci new ◦ Langsung dengan kata kunci new
class Test. Str 1 { public static void main (String argv[]) { String s 1; s 1=”Halo”; String s 2; s 2= new String(”Ini juga bisa”); String s 3 = ”Halo, apa khabar? ”; System. out. println(s 3); System. out. println(s 1); System. out. println(s 2); System. out. println(s 3); s 1 = s 1 + ”, apa khabar? ”; System. out. println(s 1); } } //konkatenasi string
String null & String kosong (tidak sama) String s 1; s 1 = null; String s 2; s 2 = ””; belum mempunyai alokasi memori untuk penempatan obyek tsb. String kosong (empty string) adalah String yg sudah diinisialisasi, namun tdk punya karakter apapun.
Contoh beberapa metoda pada class String int length() panjang dari string tsb char. At(int index) karakter pada posisi index di string tsb public class Caristr { public static void main(String argv[]) { String str = "Ini adalah # String yang diproses"; boolean found = false; int i; for (i = 0; i < str. length(); i++) if (str. char. At(i) == '#') { found = true; break; } if (found) i); } } System. out. println("Posisi # ada pada huruf ke " +
int index. Of(char ch) posisi index pada String dimana karakter ch tsb ditemukan int index. Of(String s) posisi index pada String dimana String s ditemukan String str = ”Ini adalah # String” ; int I = str. index. Of(’#’); System. out. println(”Posisi=” + i); int I = str. index. Of(”adalah”); System. out. println(”Posisi=” + i);
Membandingkan String s 1=”xxx”; String s 2=”yyy”; s 1 == s 2 s 1. equals(s 2) atau s 2. equals(s 1) Membandingkan obyek Membandingkan string public class Compare { public static void main(String argv[]) { String tabel[] = {"amir", "bambang", "hasan"}; String nama = "amir"; for (int i = 0; i < tabel. length; i++) { if (tabel[i]. equals(nama)) { System. out. println(nama + " terdaftar dalam tabel!"); break; } }
Modifikasi String adalah obyek yang bersifat “read only”, artinya tidak dapat diganti isinya. s String s = ”hallo”; h a l l o b a r u s s = ”baru”; Disini isi String s diganti dengan String baru, sedangkan nilai String yang lama tetap berada pada memori, untuk kemudian akan diproses oleh garbage collector secara internal.
Metoda untuk mengambil isi String : String substring(int offset) String substring(int offset, int end. Index) public class Sub. Str { public static void main(String argv[]) { String s = "Kalimat ini akan disalin kemudian"; String s 1 = s. substring(5); String s 2 = s. substring(8, 25); System. out. println("S 1 = " + s 1); System. out. println("S 2 = " + s 2); } }
Konstruktor String dapat juga diciptakan melalui inisialisasi karakter array. public class Strkonstruktor { public static void main(String argv[]) { char c_arr[] = {'h', 'a', 'l', 'o'}; String s 1 = new String(c_arr); String s 2 = new String(c_arr, 2, 2); System. out. println("c_arr = " + c_arr); System. out. println("s 1 = " + s 1); System. out. println("s 2 = " + s 2); } }
String. Buffer � Karena class String adalah bersifat read-only, maka class String. Buffer digunakan untuk menampung byte yang dapat diubah isinya. � Konstruktor : String. Buffer(int n) menciptakan Stringbuffer dengan array sebanyak n bytes � Metoda : append() menambah karakter pada string. Buffer insert() menyelipkan potongan string pada sebuah String
public class Str. Buf { public static void main(String argv[]) { String str = "Ini String Original"; int len = str. length(); String. Buffer str. Buf = new String. Buffer(len); char ch; for (int i = (len-1); i >= 0; i--) { ch = str. char. At(i); str. Buf. append(ch); } System. out. println(str. Buf); } }
Menyelipkan Teks public class Insert { public static void main(String argv[]) { String. Buffer str = new String. Buffer("Minum Panas"); } } str. insert(6, "Kopi "); System. out. println(str);
Command Line Processor � CLP adalah program yg menerima input dari keyboard � Untuk membaca input dari keyboard dperlukan Buffered. Reader. � Pertama definisikan dahulu obyek yg berasal dari System. in (keyboard) yg merupakan class dari Input. Stream. Agar dapat menggunakan metoda read. Line() yg memberikan nilai balik String, obyek tsb perlu dibungkus dgn Buffered. Reader.
public class CLP { public static void main(String argv[]) { String command = ""; java. io. Input. Stream. Reader isr = new java. io. Input. Stream. Reader(System. in); java. io. Buffered. Reader buf = new java. io. Buffered. Reader(isr); System. out. println("input : "); try { command = buf. read. Line(); } catch (java. io. IOException ex) { System. out. println("Error"); } System. out. println("Yang dibaca : " + command); } }
- Slides: 36