7 KELAS-KELAS DASAR.

Download Report

Transcript 7 KELAS-KELAS DASAR.

Pemrograman Berorientasi Objek 1
Pemrograman Berorientasi Objek 1
 kelas
String,
 kelas String Buffer,
 kelas math,
 kelas character,
 kelas number,
 dan lain-lain.
Pemrograman Berorientasi Objek 1
Di java suatu string adalah objek
Ada dua kelas string :
◦ kelas String
◦ kelas StringBuffer
Pemrograman Berorientasi Objek 1
7 cara untuk membuat objek String :
◦
◦
◦
◦
◦
◦
◦
String();
// cara1
String(String value); // cara2
String(char value[]);
// cara3
String(byte ascii[], int hibyte); // cara4
String(char value[], int offset, int count); //
cara5
String(byte ascii[], int hibyte, int offset, int
count); //cara6
String(StringBuffer buffer); // cara7
Pemrograman Berorientasi Objek 1
Ada 33 method yang digunakan untuk melakukan
8 macam operasi pada kelas String, yaitu :
1. int length;
2. char charAt(int index);
3. boolean startsWith(String prefix);
4. boolean startsWith(String prefix, int tooffset);
5. boolean endsWith(String suffix);
6. int indexOf(int i);
7. int indexOf(int i, int fromIndex);
8. int indexOf(String str);
9. int indexOf(String str, int fromIndex);
10. int lastIndexOf(int i);
Pemrograman Berorientasi Objek 1
11. int lastIndexOf(int i, int fromIndex);
12. int lastIndexOf(String str);
13. int lastIndexOf(String str, int fromIndex);
14. String substring(int beginIndex);
15. String substring(int beginIndex, int endIndex);
16. boolean equels(Object anObject);
17. boolean equelsIgnoreCase(String aString);
18. int compareTo(String str);
19. int compareTo(Object anObject);
20. String concat(String s);
Pemrograman Berorientasi Objek 1
21.
22.
23.
24.
25.
26.
27.
String replace(char oldChar, char newChar);
String trim();
String toLowerCase();
String toUpperCase();
static String valueOf(Object anObject);
static String valueOf(char ch[]);
static String valueOf(char ch[], int offset, int
count);
28. static String valueOf(boolean b);
29. static String valueOf(char ch);
30. static String valueOf(int i);
Pemrograman Berorientasi Objek 1
31. static String valueOf(long l);
32. static String valueOf(float f);
33. static String valueOf(double d);
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 berisi sekumpulan
method dan
konstanta matematika.
◦ kelas StrinctMath yang berisi
sekumpulan methodmatematika
yang lengkap (lebih lengkap
darikelas Math).
Pemrograman Berorientasi Objek 1
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
static double toRadians(double sudut);
static double toDegrees(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 atan2(double a, double b); //cartesius ke polar
Pemrograman Berorientasi Objek 1
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
◦
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
• 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 tipe data wrapper di java ada 10 :
◦ Boolean
◦ Byte
◦ Character
◦ Double
◦ Float
◦ Integer
◦ Long
◦ Number
◦ Short
◦ Void
Pemrograman Berorientasi Objek 1
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 byteValue();
◦ double doubleValue();
◦ float floatValue();
◦ int intValue();
◦ long longValue();
◦ short shortValue();
Pemrograman Berorientasi Objek 1
2. Kelas Boolean
Kelas ini membungkus tipe data dasar Boolean.
Memiliki dua constructor :
◦ Boolean(Boolean boolValue);
◦ Boolean(String boolString);
Method-method di kelas ini adalah :
◦ boolean booleanValue();
◦ boolean equels(Object boolObj);
◦ static boolean getBoolean(String
propertyName);
◦ int hashCode();
◦ String toString();
◦ Static boolean valueOf(String boolString);
Pemrograman Berorientasi Objek 1
3. Kelas Character
Kelas ini membungkus tipe data dasar dan
memiliki beberapa method :
static int digit(char ch, int radix);
Pemrograman Berorientasi Objek 1
4. Kelas Byte, Short, Integer, dan Long
Method-method di kelas Byte adalah :
◦ byte byteValue();
◦ int compareTo(Byte b);
◦ int compareTo(Object obj); dll.
Method-method di kelas Short :
◦ byte byteValue();
◦ int compareTo(Short sh); dll.
Method-method di kelas Integer :
◦ byte byteValue();
◦ int compareTo(Integer i); dll.
Method-method di kelas Long adalah :
◦ int compareTo(Long obj);
◦ int compareTo(Object obj);
Pemrograman Berorientasi Objek 1
5. Kelas Float dan Double
Method-method di kelas Float :
◦ byte byteValue();
◦ int compareTo(Float f);
◦ double doubleValue(); dll.
Method-method di kelas Double :
◦ int compareTo(Double d);
◦ byte byteValue();
◦ int compareTo(Object obj);
Pemrograman Berorientasi Objek 1
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
NaN
Kondisi bukan angka
Pemrograman Berorientasi Objek 1

Contoh penggunaan :
Byte num1 = new Byte(“100”);
Short num2 = new Short(“100”);
Integer num3 = new Integer(100);
Long num4 = new Long(100);



Obyek yang terdiri atas deretan karakter
Tidak perlu ditentukan jumlah karakternya
Inisialisasi :
◦ Langsung tanpa kata kunci new
◦ Langsung dengan kata kunci new
class TestStr1 {
public static void main (String argv[]) {
String s1;
s1=”Halo”;
String s2;
s2= new String(”Ini juga bisa”);
String s3 = ”Halo, apa khabar?”;
System.out.println(s3);
System.out.println(s1);
System.out.println(s2);
System.out.println(s3);
s1 = s1 + ”, apa khabar?”;
System.out.println(s1);
}
}
//konkatenasi string
String s1;
s1 = null;
String s2;
s2 = ””;
belum mempunyai alokasi memori
untuk penempatan obyek tsb.
String kosong (empty string)
adalah String yg sudah
diinisialisasi, namun tdk
punya karakter apapun.
int length()  panjang dari string tsb
char charAt(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.charAt(i) == '#') {
found = true;
break;
}
if (found)
i);
}
}
System.out.println("Posisi # ada pada huruf ke " +
int indexOf(char ch)  posisi index pada String dimana karakter ch tsb ditemukan
int indexOf(String s)  posisi index pada String dimana String s ditemukan
String str = ”Ini adalah # String” ;
int I = str.indexOf(’#’);
System.out.println(”Posisi=” + i);
int I = str.indexOf(”adalah”);
System.out.println(”Posisi=” + i);
String s1=”xxx”;
String s2=”yyy”;
s1 == s2
s1.equals(s2)
atau
s2.equals(s1)
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;
}
}
}
}
String adalah obyek yang bersifat “read only”, artinya tidak dapat diganti isinya.
s
String s = ”hallo”;
h
a
l
l
o
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 endIndex)
public class SubStr {
public static void main(String argv[]) {
String s = "Kalimat ini akan disalin kemudian";
String s1 = s.substring(5);
String s2 = s.substring(8, 25);
System.out.println("S1 = " + s1);
System.out.println("S2 = " + s2);
}
}
Konstruktor String
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 s1 = new String(c_arr);
String s2 = new String(c_arr, 2, 2);
System.out.println("c_arr = " + c_arr);
System.out.println("s1 = " + s1);
System.out.println("s2 = " + s2);
}
}



Karena class String adalah bersifat read-only,
maka class StringBuffer digunakan untuk
menampung byte yang dapat diubah isinya.
Konstruktor :
StringBuffer(int n)
menciptakan Stringbuffer dengan array
sebanyak n bytes
Metoda :
append()  menambah karakter pada stringBuffer
insert()  menyelipkan potongan string pada sebuah
String
public class StrBuf {
public static void main(String argv[]) {
String str = "Ini String Original";
int len = str.length();
StringBuffer strBuf = new StringBuffer(len);
char ch;
for (int i = (len-1); i >= 0; i--) {
ch = str.charAt(i);
strBuf.append(ch);
}
System.out.println(strBuf);
}
}
public class Insert {
public static void main(String argv[]) {
StringBuffer str = new
StringBuffer("Minum Panas");
str.insert(6, "Kopi ");
System.out.println(str);
}
}



CLP adalah program yg menerima input dari
keyboard
Untuk membaca input dari keyboard
dperlukan BufferedReader.
Pertama definisikan dahulu obyek yg
berasal dari System.in (keyboard) yg
merupakan class dari InputStream. Agar
dapat menggunakan metoda readLine() yg
memberikan nilai balik String, obyek tsb
perlu dibungkus dgn BufferedReader.
public class CLP {
public static void main(String argv[]) {
String command = "";
java.io.InputStreamReader isr = new
java.io.InputStreamReader(System.in);
java.io.BufferedReader buf = new
java.io.BufferedReader(isr);
System.out.println("input : ");
try {
command = buf.readLine();
}
catch (java.io.IOException ex) {
System.out.println("Error");
}
System.out.println("Yang dibaca : " + command);
}
}