1 / 19

OOP Java

OOP Java. 04 Array & String. Pokok Bahasan. Reference Array String. Reference. Seperti kita ketahui ada 8 tipe primitif di java : boolean, char, byte, short, int, long, float dan double. Semua tipe selain tipe primitif adalah Objek, diantaranya : array dan string.

bary
Download Presentation

OOP Java

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OOP Java 04 Array & String

  2. Pokok Bahasan • Reference • Array • String

  3. Reference • Seperti kita ketahui ada 8 tipe primitif di java : boolean, char, byte, short, int, long, float dan double. • Semua tipe selain tipe primitif adalah Objek, diantaranya : array dan string. • Variabel yg menunjuk pada objek disebut reference variables • Passing parameter pada method untuk semua tipe data di java selalu by value, kecuali pada tipe data object digunakan by reference • Method dapat menerima parameter berupa objek, juga dapat mengembalikan (return) sebuah objek

  4. Array (1) • Mengapa kita membutuhkan array ? • c: tanpa array import java.util.Random; public class Ratarata { public static void main(String[] args) { Random rnd = new Random(); int bil1, bil2, bil3, bil4, bil5; float rata; bil1 = Math.abs(rnd.nextInt()) % 100 + 1; bil2 = Math.abs(rnd.nextInt()) % 100 + 1; bil3 = Math.abs(rnd.nextInt()) % 100 + 1; bil4 = Math.abs(rnd.nextInt()) % 100 + 1; bil5 = Math.abs(rnd.nextInt()) % 100 + 1; System.out.println(bil1+" "+bil2+" "+bil3+" "+bil4+" "+bil5); rata = (float) (bil1 + bil2 + bil3 + bil4 + bil5)/5; System.out.println("Rata-rata : " + rata); } }

  5. Array (2) import java.util.Random; public class Ratarata2 { public static void main(String[] args) { Random rnd = new Random(); int[] bil = new int[5]; float rata; int c; rata = 0; for (c=0; c<5; c++) { bil[c] = Math.abs(rnd.nextInt()) % 100 + 1; System.out.print(bil[c] + " "); rata = rata + bil[c]; } rata = rata / 5; System.out.println("\nRata-rata bilangan : " + rata); } } • c: dengan array

  6. Array (3) • Bagaimana jika terdapat 100 data ? • Dengan menggunakan array program menjadi lebih ringkas dan mudah dimaintain. • Array : kumpulan data bertipe sama. • Kita dapat membuat array untuk semua tipe, baik primitif, maupun kelas/objek. • Contoh deklarasi array : int[] one, two, three; int four[], five[][], six; Mahasiswa[] mhs;

  7. Array (4) • Dari contoh diatas : • one, two, three & four merupakan array 1 dimensi • five merupakan array 2 dimensi • six bukan merupakan array • Cara pertama lebih dianjurkan karena tidak bercampur antara variabel array, bukan array & array dengan dimensi berbeda • Deklarasi array belum menunjukkan ukurannya.

  8. Array (5) • Contoh instansiasi array : one = new int[5]; four = new int[100]; • Mengapa instansiasi array menggunakan operator new? • Indeks array dimulai dari 0 s/d n-1 • Inisialisasi (pemberian nilai) array : one[0] = 30; one[3] = 20; • Deklarasi, instansiasi dan inisialisasi dapat digabung dengan cara : int[] two = new int[3]; //deklarasi & instansiasi int[] one = {30, 10, 15, 20, 70}; //+inisialisasi

  9. Array (6) • Array untuk objek dapat dibuat dg cara yg sama : 1 Mahasiswa[] mhs; 2 mhs = new Mahasiswa[30]; 3 for (c=0; c<30; c++) 4 mhs[c] = new Mahasiswa(); • Baris 1 & 2 hanya membuat array dari reference variabel, sehingga objeknya sendiri harus dibuat kemudian (baris 4).

  10. Array (7) • Contoh array dengan dimensi lebih dari satu : int[][] five = new int[3][2]; int[] duaD = new int[3][]; duaD[0] = new int[15]; duaD[1] = new int[12]; duaD[2] = new int[20]; • Seperti contoh diatas, array dalam java tidak harus berbentuk segi empat. • Contoh dengan inisialisasi langsung : int[][] duaD = {{1,2}, {4,3}, {5,6}}; //3x2

  11. Array (8) • Array memiliki atribut length yg menyimpan panjang array : int[] one = {7,5,2,4,9,3,4}; n = one.length; • Mulai J2SE 5.0 terdapat cara baru untuk mempermudah iterasi terhadap array : int[] one = {7,5,2,4,9,3,4}; for (int element : one) System.out.println(element);

  12. Array (9) • Ukuran array tidak dapat diubah, tetapi reference variabelnya dapat dipakai untuk menunjuk ke array baru : int[] arrKu = new int[5]; arrKu = new int[10]; (dlm contoh diatas array pertama ‘hilang’) • Kelas System menyediakan method untuk mengcopy isi array : int[] source = {1, 2, 3}; int[] dest = {7, 6, 5, 4, 3, 2, 1}; System.arraycopy(source, 0, dest, 0, source.length); • Isi array source mulai indeks 0, akan dicopy ke dest mulai indeks 0, sebesar ukuran array source, hasilnya {1, 2, 3, 4, 3, 2, 1}

  13. String (1) • String merupakankelaskhususdi Java, tetapiinstansiasi string tidakperlumenggunakan operator new. c: String s = “Hello World”; String str; str = “Ini string saya”; • String merupakansebuahkelas, dandidalamnyaterdapatbeberapa method, misalnya: • s.length() --> panjang string • s.substring(0, 2) --> mengembalikan “He” • (karakterke 0 sampai ke-2 [bukansampaidengan])

  14. String (2) • Selain memiliki method, string juga memiliki operator “+” String s = “Banyaknya “+ 2; /*konversi “2”*/ intz = 4; String s = “Ada “ + z + “ buah “; String s = 5; /*tidak boleh */ • Catatan: Literal string merupakan instans dari objek string: “Hello”.length() menghasilkan 5

  15. String (3) • Escape sequence String merupakan serangkaian karakter diawali \ (backslash) untuk mengetikkan karakter khusus : • \n : newline • \t : karakter tab • \\ : backslash • \” : double quote • \' : single quote (apostrophe) • \udddd: karakter dalam unicode dddd adalah digit heksadesimal (0-9, A-F)

  16. String (4) • Sifat Immutable String : string sebenarnya immutable (tidak bisa diubah), dalam : String a = “hello”; a = a + “ world”; • Sebuah objek baru diciptakan, objek lama dibuang (untuk dipungut oleh garbage collector) • a menunjuk ke objek yang baru

  17. String (5) • Operator perbandingan (==) nilai primitif membandingkan nilai • Operator == terhadap reference membandingkan reference (bukan isi objek) • Method .equals() digunakan untuk membandingkan isi objek (termasuk juga string) String a = “Hello”; String b = “World”; if (a.equals(b)) { }

  18. String (6) • String yang dapat diubah (mutable) juga tersedia di java yaitu StringBuffer, contoh : StringBuffer str = new StringBufer(“Hallo”); StringBuffer str2 = null; str2 = new StringBuffer(“Siapa namamu ?”); StringBuffer str3 = null; str3 = str2; • Beberapa method dari kelas StringBuffer : • append • insert • charAt • setCharAt • reverse • replace • delete

  19. Berlatihlah membuat program yang menggunakan array & String !Practice Leads to Mastery

More Related