Pemrograman Berotientasi Object - Gunadarma...

29
Pemrograman Berotientasi Object

Transcript of Pemrograman Berotientasi Object - Gunadarma...

Page 1: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Pemrograman Berotientasi Object

Page 2: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string merupakan array karakter.

Dalam Java, string adalah object dan bukan array karakter.

▪ Dapat dibuat array karakter, tetapi ia bukan string.

String terdiri dari sederetan karakter yang dibatasi olehtanda petik ganda (doublequote).

Page 3: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

char inputKey;char ampersand = '&'; // tipe primitif char.

String perancangJava = "James Gosling";String strAmpersand = "&"; // tipe object String.

Perhatikan tanda kutip tunggal dan kutip ganda yang membedakan karakter dan string.

Page 4: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Perintah Keterangan

concat(str) : mengabungkan 2 buah string string.

isEmpty() : memeriksa apakah string kosong atau tidak.

trim() : membuang spasi di sebelah kiri dan kanan string.

length() : menghitung banyak karakter dalam string.

equals(str) : membandingkan 2 buah string.

substring(<awal>, <akhir>) : mengambil substring dari string.

charAt(<index>) : mengambil karakter yang ada pada index.

lastIndexOf(kar) : mencari index terakhir dari string yang mengandungkarakter kar.

equalsIgnoreCase(str) : membandingkan string dengan str, tidak membedakanhuruf besar dan kecil

copyValueOf(arr_char) : membentuk string dari array karakter

replace(<old>, <new>) : mengganti <old> menjadi <new>

Page 5: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Untuk menampilkan string dalam program Java non-GUI (teks), kita dapat memakai perintah System.out.println() ataupunSystem.out.print().

Page 6: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

class TampilString {public static void main(String [] args) {

System.out.print("Perancang C: ");System.out.print("Brian Kernighan dan Dennis Ritchie.");System.out.println(); // berganti barisSystem.out.println("Perancang Java: ");System.out.println(" James Gosling.");}

}

Perhatikan perbedaan antara print() dan println().Output program (ditampilkan string sebagai berikut):

Perancang C++: Brian Kernighan dan Dennis Ritchie.

Perancang Java:

James Gosling.

Page 7: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Object String akan mengenali operator penggabungan string (concat) berupa tanda (+).

Contoh:String s1 = "Java Micro - ";String s2 = s1 + "Java Enterprise";System.out.println(s2);

Dengan operator new, dapat juga membuat object String dari array karakter.

Contoh:char chArray[] = {'J', 'B', 'u', 'i', 'l', 'd', 'e', 'r', '9'};String s1 = new String(chArray); // s1 = "JBuilder 9"

Akan menampilkan string:Java Micro - Java Enterprise

Page 8: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Selain untuk menjumlahkan tipe variable String dengan String, operator + juga dapat dipakai untuk menjumlahkan tipe variable String dengan tipelainnya:

String dengan boolean, String dengan integer (byte, short, int, long, char), String dengan floating-point (float, double), String dengan object.

Page 9: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

class Concat {public static void main(String []args) {

boolean bool = true;long intg = 4567890;double flot = 45678.9123e-11;

Concat objt1 = null;Concat objt2 = new Concat( );

System.out.println("Concatenation:" +"\nString + boolean: " + false + " - " + bool +"\nString + integer: " + 123 + " ~ " + intg +"\nString + float : " + 3.14 + " ~ " + flot +"\nString + object : " + objt1 + " ~ " + objt2);

}}

Page 10: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Sebuah object String dapat dibuat dengan memakai operator new.

Contoh:

String s1 = "JBuilder 9.";

String s2 = new String("JBuilder 9.");

Kedua variable s1 dan s2 akan sama-sama merupakan object String yang berisikan teks: JBuilder 9.

Dengan operator new, dapat juga membuat object String dari array karakter.

Contoh:

char chArray[] = {'J', 'B', 'u', 'i', 'l', 'd', 'e', 'r', '9'};

String s1 = new String(chArray); // s1 = "JBuilder 9."

Page 11: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Dapat juga memilih sub-array dari array karakter untuk dikonversi menjadiobject String.

Bentuk umumnya adalah sebagai berikut:

String [nama var] = new String( char[ ] chArray, int offset, int count )

Di mana : chArray merupakan array karakter, offset merupakan index awal dari sub-array, count merupakan jumlah karakter yang akan diambil.

Page 12: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Contoh:

char chAr[] = {'J', 'B', 'u', 'i', 'l', 'd', 'e', 'r', ' ', '9'};

String s1 = new String(chAr, 1, 5); //s1 = "Build

Index array maupun String dimulai dari angka 0 (zero-based index). Dengan offset = 1, maka karakter awalnya adalah 'B' (index 1). Dengan count = 5, akan diambil sebanyak 5 karakter mulai dari 'B'. Sub-array yang diambil adalah: 'Build'.

Page 13: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Dalam Java, variable dengan tipe String merupakan sebuah object dari class String. Ketika dideklarasikan sebuah string, maka secara otomatis, compiler Java akan

membuatkan sebuah object String.

Dalam JDK, class String disimpan dalam package java.lang.

Jadi full-name bagi class ini adalah: java.lang.String.

Sebagai sebuah class, String mempunyai beberapa member berupa method.

Berikut beberapa method penting : Panjang String: length( ) Mengambil Sub-string: substring( ) Mengambil Karakter: charAt( ) Mengambil Index: indexOf( ) Casing: toUpperCase( ), toLowerCase( )

Page 14: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Method length() dipakai untuk mengambil panjang dari variable String.

Contoh:String s1 = "JBuilder 9.";int lenStr = s1.length(); // lenStr = 11System.out.println(lenStr); // 11

Page 15: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Method substring() dipakai untuk mengambil sub-string dari sebuah object String.Ada dua bentuk dari method ini : Bentuk pertama (overload method):

String substring(int beginIndex, int endIndex);String substring(int beginIndex);Bentuk tersebut mengambil sub-string dimulai dari posisi beginIndex sampai

posisi endIndex-1.

Bentuk kedua.// posisi: "01234567890"String s1 = "JBuilder 9.";String cutStr = s1.substring(5); // cutStr = "der 9."String subStr = s1.substring(1, 6); // subStr = "Build”Bentuk tersebut mengambil sub-string dimulai dari posisi beginIndex sampaiakhir string

Page 16: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//Use substring()class SubStr {

public static void main (String args[]) {String orgstr = "Java Makes the Web move";

//construct a substringString substr = orgstr.substring(5, 18);System.out.println("orgstr : " + orgstr);System.out.println("substr : " + substr);

} }

Output :orgstr : Java Makes the Web movesubstr : Makes the Web

Page 17: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Method charAt() dipakai untuk mengambil karakter dari object String pada posisi index tertentu.

Contoh:// posisi: "01234567890"String s1 = "JBuilder 9.";char c1 = s1.charAt(1); // c1 = 'B'char c2 = s1.charAt(9); // c2 = '9'char c3 = s1.charAt(6); // c3 = 'e'

Page 18: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Method indexOf() dipakai untuk mengambil nilai index berupa posisikarakter tertentu di dalam object String. Posisi karakter yang dicari adalahposisi dari karakter pertama yang ditemui.

Contoh:// posisi: "0123456789012345678"String s1 = "JBuilder untuk Java";int pos1 = s1.indexOf('u'); // pos1 = 2int pos2 = s1.indexOf('t'); // pos2 = 11int pos3 = s1.indexOf('J'); // pos3 = 0

Nilai index yang dikembalikan adalah index dari karakter pertama yang ditemui.Misalnya ada 3 buah karakter 'u' dalam s1, tetapi yang dikembalikan adalahposisi dari karakter 'u' yang pertama (yaitu 2).

Page 19: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Method toUpperCase() atau toLowerCase() dipakai untukkonversi semua karakter didalam object String menjadi hurufbesar atau huruf kecil.

String toUpperCase();String toLowerCase();

Contoh:String s1 = "JBuilder untuk Java\u2122";String sUp = s1.toUpperCase(); // = JBUILDER UNTUK JAVATM

String sDown = s1.toLowerCase(); // = jbuilder untuk javaTM

Page 20: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

class StrOps {public static void main (String args[]) {

String str1 = "When it comes to web programming, Java is #1.";String str2 = new String (str1);String str3 = "Java string are powerful.";int result, idx;char ch;

System.out.println("Length of str1 : " + str1.length());

//display str1, one char at timefor (int i=0; i<str1.length(); i++)

System.out.print(str1.charAt(i));System.out.println();

Page 21: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

if (str1.equals(str2))System.out.println("str1 == str2");

elseSystem.out.println("str1 != str2");

if (str1.equals(str3))System.out.println("str1 == str3");

elseSystem.out.println("str1 != str3");result = str1.compareTo(str3);

if (result == 0)System.out.println("str1 and str3 are equal");

else if (result < 0)System.out.println("str1 is less than str3");

elseSystem.out.println("str1 is greater than str3");

//assign a new string to str2str2 = "One Two Three One";idx = str2.indexOf("One");System.out. println("index of first occurrence of One : " +idx);;idx = str2.lastIndexOf("One");System.out. println("index of first occurrence of One : " +idx);;} }

Page 22: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Output :Length of str1 : 45When it comes to web programming,Java is #1.str1 == str2str1 != str3str1 is greater than str3index of first occurrence of One : 0index of first occurrence of One : 14

Page 23: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//Demonstrate String Arrayclass StringArrays {

public static void main (String args[]) {String str []= { "This", "is", "a", "test"};System.out.println("Original Array : ");for (int i=0;i < str.length;i++)

System.out.print(str[i] + " ");System.out.println("\n");

//change a stringstr[1] = "was";str[3] = "test, tool";System.out.println ("Modified Array : ");for (int i=0;i < str.length;i++)

System.out.print(str[i] + " ");System.out.println("\n");

} }

Page 24: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Output :Original Array :This is a testModified Array :This was a test, tool

Page 25: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//Some string operationclass StrOperation {

public static void main (String args[]) {String str1 = "Now is the time for all good men "+"to come to the aid of their country.";System.out.println("Length of str1 : " + str1.length());System.out. println("indexof (t) : " + str1.indexOf('t'));System.out. println("lastindexof (t) : " + str1.lastIndexOf ('t'));System.out. println("indexof (the) : " + str1.indexOf("the"));System.out. println("lastindexof (the) : " + str1.lastIndexOf ("the"));

Page 26: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//menggabungkan stringstr1 = "Belajar";String str2 = " Bahasa";String str3 = " Java";String str4 = str1 + str2 + str3;System.out.println("Hasil str4 = "+ str4);System.out.println("Belajar".concat(" Bahasa").concat(" Java"));

//replace karakterSystem.out.println("Hello".replace('l', 'w'));

//toLower & toUpperSystem.out.println("HeLLo".toLowerCase());System.out.println("HeLLo".toUpperCase());

//Trim => menghilangkan bagian kosong didepan dan belakangSystem.out.println(" Hello World ".trim());} }

Page 27: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

Output:length of str1 : 69indexof (t) ; 7lastindexof (t) : 65indexof (the) : 7lastindexof (the) : 55Hasil str4 = Balajar Bahasa JavaBelajar Bahasa JavaHewwohelloHELLOHello World

Page 28: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//Some string operationclass StrBuffer {

public static void main (String args[]) {StringBuffer str = new StringBuffer ("Hello World");System.out.println("buffer before = " + str);System.out.println("charAt(1) before = " + str.charAt(1));str.setCharAt(1, 'i');str.setLength(2);System.out.println("buffer after = " + str);System.out.println("charAt(1) after = " + str.charAt(1));

Page 29: Pemrograman Berotientasi Object - Gunadarma Universitymiftah.staff.gunadarma.ac.id/Downloads/files/28839/6.+String.pdf · Dalam bahasa lain seperti C/C++ dan Pascal (Delphi), string

//AppendStringBuffer str1 = new StringBuffer (40);int a = 2;String S = str1.append("Hello ").append(a).append("-IA..!!!").toString();;System.out.println(S);

//InsertStringBuffer str2 = new StringBuffer ("Hello World");str2.insert(6, "there ");System.out.println(str2);} }

Output :buffer before = Hello WorldcharAt(1) before = ebuffer after = HicharAt(1) after = iHello 2-IA..!!!Hello there World