Array dan String Viska Mutiawani, M.Sc 1 Viska Mutiawani - Informatika FMIPA
Konsep Penting Array String 2 Viska Mutiawani - Informatika FMIPA
3 Viska Mutiawani - Informatika FMIPA Array
Array Sintaks Tipe_data[] nama_variable = new tipe_data[ukuran]; Contoh: int[] tts = new int[100]; ATAU int[] tts; tts = new int[100]; ATAU int tts[]= new int[100]; 4 Viska Mutiawani - Informatika FMIPA
Array (2) Memberi nilai kepada array: int[] nilai = {2, 3, 4, 5}; char[] abjad= {a, b, c, d}; Kita juga bisa membuat array tanpa nama: new int[]{2, 3, 5, 7, 11}; menyediakan satu array baru dengan nilai-nilai tersebut. Sering dipakai untuk mengirim parameter ke method. 5 Viska Mutiawani - Informatika FMIPA
Array (3) Digunakan apabila kita ingin mengirimkan array sebagai parameter pada method. cetaklimaprima(new int[] {2,3,5,7,11} ); ATAU int[] bilprima = {2,3,5,7,11}; cetaklimaprima(bilprima); 6 Viska Mutiawani - Informatika FMIPA
Multi-dimensi Array Data array disimpan di dalam indeks baris dan kolom int[][] arr=new int[3][3];//3 row and 3 column arr[0][0]=1; arr[0][1]=2; arr[0][2]=3; arr[1][0]=4; arr[1][1]=5; arr[1][2]=6; arr[2][0]=7; arr[2][1]=8; arr[2][2]=9; 7 Viska Mutiawani - Informatika FMIPA
Contoh class Testarray3{ public static void main(string args[]){ }} //declaring and initializing 2D array int arr[][]={{1,2,3},{2,4,5},{4,4,5}}; //printing 2D array for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ System.out.print(arr[i][j]+" "); } System.out.println(); } 8 Viska Mutiawani - Informatika FMIPA
Array Sebagai Objek Apabila ia dianggap sebagai objek, maka ia mempunyai atribut dan method Atribut length Menentukan ukuran suatu array: nama_array.length int bilprima={2, 3, 5, 7, 11}; for(int i=0; i<bilprima.length;i++) System.out.println(bilPrima[i]); 9 Viska Mutiawani - Informatika FMIPA
Method arraycopy() Mengcopy dari satu array ke array yang lain. Sintaksnya: System.arraycopy(sumber,indekSumber,sasaran, indeksasaran,bil); sumber :nama array yang hendak dicopy indeksumber :permulaan kedudukan array yang akan di copy dari sumber sasaran : array baru yang akan menyimpan kandungan array sumber indeksasaran :permulaan kedudukan pada array sasaran untuk menyimpan nilai yang dicopy bil : jumlah nilai yang dicopy 10 Viska Mutiawani - Informatika FMIPA
Metod arraycopy() int[] nomganjil ={1, 3, 5, 7, 9}; int[] nompositif={10, 20, 30, 40, 50, 60}; System.arraycopy(nomGanjil, 1, nompositif, 2, 3); for(int i=0; i<nompositif.length; i++){ } Sysem.out.println( nompositif[ + i + ] selepas copy: +nompositif[i]); OUTPUT nompositif[0] selepas copy ialah 10 nompositif[1] selepas copy ialah 20 nompositif[2] selepas copy ialah 3 nompositif[3] selepas copy ialah 5 nompositif[4] selepas copy ialah 7 nompositif[5] selepas copy ialah 60 11 Viska Mutiawani - Informatika FMIPA
System.arraycopy(nomGanjil, 1, nompositif, 2, 3); Sebelum copy 1 3 5 7 9 10 20 30 40 50 60 Selepas copy 1 3 5 7 9 10 20 3 5 7 60 12 Viska Mutiawani - Informatika FMIPA
Memproses data array Data yang ada dalam array biasanya diproses dengan for loop Krn ukuran diketahui Tipe datanya sama semua Sejak Java versi 5, diperkenalkan for-each loop Digunakan untuk traverse/menjejaki unsur array satu demi satu Tidak perlu indeks 13 Viska Mutiawani - Informatika FMIPA
Contoh for-each pada array public class TestArray { public static void main(string[] args) { double[] mylist = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (double element: mylist) { System.out.println(element); } } } 14 Viska Mutiawani - Informatika FMIPA
15 Viska Mutiawani - Informatika FMIPA String
String Berbeda dengan C, Java mempunyai kelas String. Kita tidak perlu tipe data array char untuk menyimpan rentetan aksara. Tipe data berjenis String akan menyimpan aksara di antara tanda, termasuk ruang kosong Contoh: String kosong= ; //suatu rentetan kosong String namasaya = Muhammad Muktasim ; 16 Viska Mutiawani - Informatika FMIPA
String pada Java String pada Java Objek yang merepresentasikan rentetan aksara Class String digunakan untuk mencipta objek String String pada Java bersifat immutable Maksudnya isinya tidak bisa diubah Jika ingin bentuk string yang bisa diubah isinya, gunakan class StringBuffer dan StringBuilder 17 Viska Mutiawani - Informatika FMIPA
Cara mencipta objek String (1) String literal Dengan tanda petik dua String s="welcome"; Objek String disimpan di String constant pool String s1="welcome"; String s2="welcome"; //merujuk ke string s1 yg isinya sama 18 Viska Mutiawani - Informatika FMIPA
Cara mencipta objek String (2) Dengan keyword new String s=new String("Welcome"); //mencipta 2 objek dan 1 variabel reference Pada kasus ini, JVM akan mencipta satu objek String dalam memory normal (non pool) dan bentuk literal "Welcome" akan disimpan dalam string constant pool. Variable s merujuk pada object dalam heap(non pool). 19 Viska Mutiawani - Informatika FMIPA
Cara mencipta objek String (3) Dari karakter char 20 Viska Mutiawani - Informatika FMIPA
Operasi Terhadap String Menggabung string Menggunakan operator + String judul = OO ; String buku =.Java ; String judulbuku = judul + buku; System.out.println(judulBuku); OUTPUT OO.Java //tanpa spasi Bisa juga menggunakan method concat() 21 Viska Mutiawani - Informatika FMIPA
Operasi terhadap string Mengkombinasikan string dengan concat() public class ConcatExample{ public static void main(string args[]){ String s1="java string"; s1.concat("is immutable"); System.out.println(s1); }} y"); s1=s1.concat(" is immutable so assign it explicitl System.out.println(s1); 22 Viska Mutiawani - Informatika FMIPA Java string Java string is immutable to assign it explicitly
Operasi Terhadap String Substring Java menghitung substring bermula dari 0 hingga 4 0: kedudukan P 4: kedudukan i Mendapatkan sebagian dari string Metod substring() digunakan String senikata = Puji dan syukur kepada Allah ; String s = senikata.substring(0,4); System.out.println( Subrstring bernilai +s); OUTPUT Substring bernilai Puji 23 Viska Mutiawani - Informatika FMIPA
Operasi Terhadap String Panjang string Mendapatkan panjang suatu string Metod length() digunakan String kata = Salam Sejahtera ; int panjang = kata.length(); // panjang bernilai 15 Membanding string Menguji apakah dua string mempunyai nilai yang sama Metod equals() digunakan salam.equals(kata); // bernilai false Salam sejahtera.equalignorecase(kata); // bernilai true 24 Viska Mutiawani - Informatika FMIPA
Method String lain? Masih banyak method class String lain yang berguna seperti: char charat(int index) int length() boolean contains(charsequence s) boolean isempty() String concat(string str) String replace(char old, char new) String trim() String split(string regex) int indexof(int ch) String tolowercase() String touppercase() 25 Viska Mutiawani - Informatika FMIPA
Method charat() public class CharAtExample{ public static void main(string args[]){ String name="javatpoint"; char ch=name.charat(4); //returns the char value at the 4th index System.out.println(ch); }} 26 Viska Mutiawani - Informatika FMIPA
Method endswith() dan startswith() public class EndsWithExample{ public static void main(string args[]){ String s1="java by javatpoint"; System.out.println(s1.endsWith("t")); System.out.println(s1.startsWith("point")); }} 27 Viska Mutiawani - Informatika FMIPA
Method equals() public class EqualsExample{ public static void main(string args[]){ String s1="javatpoint"; String s2="javatpoint"; String s3="javatpoint"; String s4="python"; System.out.println(s1.equals(s2)); //true because content and case is same System.out.println(s1.equals(s3));//false because case is not same System.out.println(s1.equals(s4));//false because content is not same }} 28 Viska Mutiawani - Informatika FMIPA
Method isempty() public class IsEmptyExample{ public static void main(string args[]){ String s1=""; String s2="javatpoint"; }} System.out.println(s1.isEmpty()); System.out.println(s2.isEmpty()); 29 Viska Mutiawani - Informatika FMIPA
Method split() public class SplitExample{ public static void main(string args[]){ String s1="java string split method by javatpoint"; String[] words=s1.split( "); //splits the string based on space //using java foreach loop to print elements of string array for(string w:words){ System.out.println(w); } }} 30 Viska Mutiawani - Informatika FMIPA
Method tostring() Method tostring() ada dalam class Object Jika anda ingin merepresentasikan suatu objek sebagai string, gunakan method tostring() Method tostring() mengembalikan representasi string dari suatu objek Sewaktu anda melakukan proses cetak/print, compiler Java secara internal memanggil method tostring() Anda dapat meng-override method tostring() untuk mencetak isi sesuai keinginan anda 31 Viska Mutiawani - Informatika FMIPA
Sistem Unicode 32 Viska Mutiawani - Informatika FMIPA
Unicode Unicode merupakah standar pengkodean universal yang mampu untuk merepresentasikan hampir semua bahasa tertulis di dunia ini. Java menggunakan sistem unicode 33 Viska Mutiawani - Informatika FMIPA
Sebelum Unicode Sebelum Unicode ada bahasa standar lain: ASCII (American Standard Code for Information Interchange) for the United States. ISO 8859-1 for Western European Language. KOI-8 for Russian. GB18030 and BIG-5 for chinese, dan lainnya. Ada dua masalah yang timbul: Suatu nilai code akan menjadi huruf yang berbeda pada standar bahasa yang berbeda. Pengkodean bahasa yang memiliki set aksara yang banyak memiliki perbedaan panjang. Ada aksara yang satu byte, ada yang dua byte, bahkan ada yang lebih. 34 Viska Mutiawani - Informatika FMIPA
Unicode solve the problem Untuk menyelesaikan masalah sebelumnya, sistem unicode dikembangkan. Unicode menggunakan 2 byte untuk aksara Jadi Java menggunakan 2 byte untuk aksara lowest value:\u0000 highest value:\uffff 35 Viska Mutiawani - Informatika FMIPA
Java Command Line Argument 36 Viska Mutiawani - Informatika FMIPA
Java Command Line Argument Merupakan argument yang dikirimkan pada saat program Java dijalankan (run). Argument yang dikirim lewat console dapat diterima dalam program Java sebagai input. Cara yang sederhana untuk melakukan tes pada program dengan nilai yang berbeda-beda. 37 Viska Mutiawani - Informatika FMIPA
Contoh class CommandLineExample{ public static void main(string args[]){ System.out.println("Your first argument is: "+args[0]); } } compile dengan > javac CommandLineExample.java run dengan > java CommandLineExample sana Output? Bagaimana jika dirun: java CommandLineExample sana dong 38 Viska Mutiawani - Informatika FMIPA
Contoh lain class A{ public static void main(string args[]){ } } for(int i=0;i<args.length;i++) System.out.println(args[i]); compile dengan > javac A.java run dengan > java A hey 1 sana dong, geser ke 3 39 Viska Mutiawani - Informatika FMIPA
Supplemental reading Getting Started http://docs.oracle.com/javase/tutorial/getstarted/index.html Nuts and bolts of the Java Language http://docs.oracle.com/javase/tutorial/java/nutsandbolts/index.html Compiling and Running a Simple Program http://www.oracle.com/technetwork/java/compile-136656.html Codingbat http://codingbat.com 40 Viska Mutiawani - Informatika FMIPA