UTILITAS JAVA Matakuliah: T0974 / Algoritma dan Metode Object Oriented Programming I Tahun: 2008 Versi: 1/0
Bina Nusantara Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu: Menggunakan pembangkit bilangan Menggunakan currency dan percent format Menggunakan penundaan eksekusi Mendapatkan informasi kalendar Mengenal dasar Object Oriented Programming
Bina Nusantara Outline Materi Pembangkit Bilangan Acak Currency Format (Locale) Percent Format (Locale) Penundaan Eksekusi Informasi Kalendar Pengenalan dasar Object Oriented Programming (OOP)
Bina Nusantara Bilangan Acak Menghasilkan bilangan acak (random) Cara: –Math.random(); Hasil 0.0 s/d 0.99… (tidak mencapai 1.0) Return value double Perkalian untuk memperluas bilangan Penambahan untuk menggeser bilangan Type casting untuk konversi ke integer –Random class Hasil sesuai keinginan Return value sesuai keinginan Memerlukan deklarasi penciptaan object
Bina Nusantara Bilangan Acak Deklarasi import import java.util.Random; Inisialisasi Random Random r = new Random(); Penggunaan int i = r.nextInt(int n) int >= 0 and < n. int i = r.nextInt() int (full range). long l = r.nextLong() long (full range). float f = r.nextFloat() float >=0.0 dan < 1.0. double d = r.nextDouble() double >=0.0 dan < 1.0. boolean b = r.nextBoolean() boolean (true atau false). double d = r.nextGaussian() double mean 0.0 dan standar deviasi 1.0.
Bina Nusantara Bilangan Acak
Bina Nusantara Currency Format Format bilangan sebagai nilai mata uang Berdasarkan tempat (locale) Deklarasi NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.US); Parameter (locale) –CANADA –CHINA –FRANCE –GERMAN –ITALY –JAPAN –KOREA –TAIWAN –UK –US
Bina Nusantara Currency Format
Bina Nusantara Percent Format Format bilangan sebagai persentase Berdasarkan tempat (locale) Deklarasi NumberFormat percentFormat = NumberFormat.getPercentInstance(Locale.US); Parameter (locale) –CANADA –CHINA –FRANCE –GERMAN –ITALY –JAPAN –KOREA –TAIWAN –UK –US
Bina Nusantara Percent Format
Bina Nusantara Penundaan Eksekusi Eksekusi dapat ditunda (pausing execution) untuk waktu tertentu Berguna untuk animasi sederhana Sintaks: try { Thread.sleep(milliseconds); } catch(Exception e) { } 1 detik = 1000 milidetik
Bina Nusantara Penundaan Eksekusi Thread.sleep(…) menyebabkan exception sehingga perlu di-try-and-catch Tidak perlu import karena dari java.lang
Bina Nusantara Penundaan Eksekusi
Bina Nusantara Calendar Mendapatkan informasi penanggalan dan waktu Deklarasi import import java.util.Calendar; Penggunaan Calendar.getInstance().get(…); Parameter (tipikal) –HOUR, MINUTE, SECOND, MILLISECOND, AM_PM, HOUR_OF_DAY –DATE –DAY_OF_WEEK, DAY_OF_MONTH, DAY_OF_WEEK_IN_MONTH,, DAY_OF_YEAR –WEEK_OF_MONTH, WEEK_OF_YEAR –MONTH –YEAR
Bina Nusantara Calendar
Bina Nusantara Calendar Tanggal 1 SUNDAY 2 MONDAY 3 TUESDAY 4 WEDNESDAY 5 THURSDAY 6 FRIDAY 7 SATURDAY Bulan 0 JANUARY 1 FEBRUARY 2 MARCH 3 APRIL 4 MAY 5 JUNE 6 JULY 7 AUGUST 8 SEPTEMBER 9 OCTOBER 10 NOVEMBER 11 DECEMBER
Bina Nusantara Calendar
Bina Nusantara Did You Know? Selain class Calendar, penanggalan terdapat pada class Date dan GregorianCalendar Kompilasi class Date akan menyebabkan deprecated Perlu ditambahkan parameter –Xlint saat kompilasi untuk menampilkan rincian deprecated javac TodayDate.java –Xlint Deprecated method/class tersebut sebaiknya tidak digunakan karena akan dihilangkan dari Java, sudah ada class pengganti
Bina Nusantara Did You Know?
Bina Nusantara getYear() dimulai dengan 0 untuk 1900 Solusi ditambahkan 1900 Did You Know?
Bina Nusantara Advanced Learning Object Oriented Programming (OOP) pemrograman yang menggunakan obyek Obyek entitas dunia nyata yang dapat diidentifikasi secara berbeda Contoh obyek: –Siswa, meja, roda, tombol, pinjaman Obyek memiliki: –Identitas : nama –State/data field/properti : variabel –Behavior : methods
Bina Nusantara Advanced Learning Obyek diciptakan melalui class Class template/blueprint yang mendefinisikan data dan method pada obyek Contoh class: class Circle { static double radius = 1.0; public static void setRadius(double newRadius) { radius = newRadius; } public static double getArea() { return radius*radius*Math.PI; } Identitas Data field Methods
Bina Nusantara Advanced Learning Penggunaan class Circle.setRadius(10); Circle.getArea();
Bina Nusantara Advanced Learning
Bina Nusantara Advanced Learning Nama class utama harus sama dengan nama file TestCircle Class utama harus public Class selain utama tidak boleh public 1 file dapat terdiri lebih dari 1 class Konsep OOP akan dibahas lebih lanjut di Algoritma dan MOOP 2
Bina Nusantara Referensi Introduction to Java Programming. 7ed p , p1061 Java Software Solutions. 7ed p The Complete Reference. 5ed. Herbert Schildt. p Bilangan acak – Calendar – – Deprecated – – Sleep – –