SlideShare ist ein Scribd-Unternehmen logo
1 von 119
Downloaden Sie, um offline zu lesen
OOP:
Java Fundamentals
Romi Satria Wahono
romi@romisatriawahono.net
http://romisatriawahono.net
HP: 0878-80480485
Materi
1. OOP Concepts:
Konsep dan Paradigma Object-Oriented
2. Java Fundamentals:
Memahami Sintaks dan Grammar Bahasa Java
3. Java Advanced:
Eksepsi, Thread, Java API
4. Java GUI:
Swing, GUI Component, Event Handling,
Studi Kasus Aplikasi GUI
5. Java Database:
Koneksi ke Database, Studi Kasus Aplikasi Database
Java Fundamentals
Java Fundamentals
1. Pernyataan dan Ekspresi
2. Variabel, Tipe Data dan Literal
3. Array
4. Operator
5. Operasi I/O Stream Sederhana
6. Pengaturan Format Output Numerik
7. Konversi String dan Bilangan (Number)
8. Pernyataan Penentu Keputusan
9. Pernyataan Pengulangan Proses
10. Pernyataan Pemindah Proses
Pernyataan dan
Ekspresi
Pernyataan
 Perintah yang menyebabkan sesuatu terjadi
dan merepresentasikan aksi tunggal dalam
program Java
Contoh: int tahunProduksi;
 Setiap pernyataan ditutup oleh karakter
semicolon (;)
 Pernyataan dikelompokkan dengan tanda
pembuka ({) dan penutup (}). Kelompok ini
disebut blok atau blok pernyataan
Ekspresi
 Pernyataan yang dapat menghasilkan suatu
nilai. Nilai yang dihasilkan oleh pernyataan
ini yang disebut dengan nilai balik (return
value)
 Nilai balik bisa berupa bilangan, boolean,
atau objek
 Method tanpa nilai balik biasanya
menggunakan keyword void
 Contoh: hasilBagi = a / b;
Kata Kunci
abstract private case interface
continue this enum static
for break instanceof void
new double return class
switch implements transient finally
assert protected catch long
default throw extends strictfp
package byte int volatile
synchronized else short float
boolean import try native
do public char super
if throws final while
Variabel, Tipe Data,
dan Literal
Variabel
 Lokasi di dalam memori komputer yang
digunakan untuk menyimpan suatu
informasi (nilai)
 Nilai variabel dapat diubah di pernyataan
manapun di dalam program
 Mendeklarasikan variabel:
tipe namaVariabel1 [, namaVariabel2]
 Contoh:
int hasilKali;
String namaSiswa, namaGuru, namaAdmin;
Lingkup Variabel
Variabel dipanggil berdasarkan lingkupnya, dimulai
dari blok yang paling kecil, kemudian blok di luar itu
1. Local Variable: digunakan di dalam method atau blok
pernyataan yang lebih kecil dari itu
2. Parameter: variabel yg ada di dalam pernyataan
(argument) method
3. Instance Variable: variabel yang memiliki nilai yang
berbeda di setiap objek
4. Class Variable: variabel yang berlaku di suatu class dan
seluruh instan dari class tersebut (objek). Ciri class
variable adalah menggunakan keyword static
Bilangan.java
public class Bilangan {
static int pencacah = 0;
int nilai;
public Bilangan(int nilai){
this.nilai = nilai;
pencacah++;
}
public void info(){
System.out.println("Nilai:“ + this.nilai);
System.out.println("Pencacah:“ + pencacah);
System.out.println("");
}
}
BilanganBeraksi.java
public class BilanganBeraksi{
public static void main(String[] args){
Bilangan b1 = new Bilangan(50);
b1.info();
Bilangan b2 = new Bilangan(15);
b2.info();
Bilangan b3 = new Bilangan(30);
b3.info();
}
}
Memberi Nilai Variabel
 Menggunakan tanda sama dengan (=)
 Kebiasaan yang baik untuk memberi
nilai awal (initial value) pada local
variabel (mencegah bug pada program)
 Contoh:
int hasilTambah = 0;
boolean status = false;
Memberi Nama Variabel
 Gunakan lowercase untuk variabel yang
terdiri dari satu kata atau kata pertama
 Gunakan kapital untuk karakter pertama dari
kata kedua, ketiga, dst
 Contoh:
int hasil;
boolean statusMesinMobil;
Button openFile;
Penentu Akses
 Private: pengaksesan suatu instance variabel
dan method hanya dapat dilakukan di dalam
class ( tidak bisa dari dari luar class)
 Tanpa Tanda: pengaksesan suatu instance
variabel dan method dapat dilakukan di
dalam kelas dan kelas lain dalam satu paket
 Public: pengaksesan suatu instance variable
dan method dapat dilakukan dari luar
(sembarang) kelas
18
Class Acces Level
Specifier Class Package SubClass World
private 
no specifier  
protected   
public    
Tipe Data
1. Tipe Data Primitif
 Sebagai kata kunci di Java (lowercase)
 Embedded di compiler Java
 Pemrosesan relatif cepat
 Contoh: int, double
2. Tipe Data Reference
 Class yang ada di library Java (java.lang)
 Menggunakan huruf capital
 Contoh: String, Integer, Double
Tipe Data Primitif
1. byte
2. short
3. int
4. long
5. float
6. double
7. char
8. boolean
Catatan:
 Secara umum jenis tipe
data:
bilangan bulat, pecahan,
karakter dan boolean
 Hasil operasi matematika
akan mengikuti tipe data
dari operand
Tipe Data
Primitif
Keterangan Ukuran Jangkauan
byte Bilangan bulat 8 bit -128  127
short Bilangan bulat 16 bit -32.768  32.767
int Bilangan bulat 32 bit -2.147.483.648 
2.147.483.647
long Bilangan bulat 64 bit -9.223.372.036.854.775,808
 9.223...807
float Bilangan pecahan 32 bit
(presisi 6-7 bit)
-3.4E38  3.4E38
double Bilangan pecahan 64 bit
(presisi 14-15 bit)
-1.7E308  1.7E308
char Karakter (unicode) 16 bit u0000  uffff
boolean Logika (true/false)
Karakter.java
public class Karakter{
public static void main(String[] args){
char karakter1=88, karakter2='X', karakter3='Y';
System.out.println("Karakter 1: " + karakter1);
System.out.println("Karakter 2: " + karakter2);
System.out.println("Karakter 3: " + karakter3);
}
}
Constant Variable (Konstanta)
 Constant Variable digunakan apabila kita ingin
membuat nilai sebuah variable tidak berubah
(tetap)
 Constant variable menggunakan keyword final
di depan tipe data, kadang sering juga
digabungkan dengan keyword static. Nama
constant variable biasanya menggunakan kapital
 Contoh:
final float PI = 3.141592;
static final boolean DEBUG = false;
Literal
Semua informasi (bilangan, karakter, string,
boolean ) yang merepresentasikan suatu nilai
 Literal Bilangan (bulat dan pecahan):
 int tahun = 2008; long nilai = 4L
 double myScore = 2.25; float piValue = 3.1415927F;
 double x = 12e22; double y = 19E-95;
 Literal Boolean (true dan false):
 boolean pilihan = true;
 Literal String:
 String quitMsg = “Yakin Ingin Keluar?”;
 Literal Karakter (unicode)
Character Escape
Escape Meaning
n New line
t Tab
b Backspace
r Carriage return
f Formfeed
 Backslash
' Single quotation mark
" Double quotation mark
d Octal
xd Hexadecimal
ud Unicode character
Pengarah Tipe (Type-Casting)
 Pengarah Tipe (Type-Casting)
 Contoh:
int i = 10;
char paksa = (char) i;
 Casting tanpa menghilangkan nilai:
Tipe Sumber Tipe Tujuan
byte short, char, int, long, float, double
short int, long, float, double
char int, long, float, double
int long, float, double
long float, double
float double
LuasSegitiga.java
public class LuasSegitiga {
public static void main(String[] args) {
int alas= 17;
int tinggi = 11;
double luas = (double) (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Latihan: Hitung Luas Lingkaran
 Buat class Lingkaran yang mempunyai
method menghitung luas lingkaran
void hitungLuas(double r){ ... }
 Rumus luas lingkaran= PI* r * r
 PI adalah konstanta dengan nilai 3. 141592
 r adalah jari-jari lingkaran
 Buat class LingkaranBeraksi, yang
menampilkan hasil perhitungan luas
lingkaran dalam dua bentuk: pecahan dan
bulat (type-casting). Beri nilai r = 11.78
Array (Larik)
Konsep Array (Larik)
 Array adalah objek yang dapat digunakan untuk
menyimpan sejumlah data
 Elemen yang disimpan pada array dapat berupa
tipe primitif (int, float, etc) atau objek (instan
dari class)
 Langkah menciptakan array:
1. Mendeklarasikan variabel array
2. Menciptakan objek array
Deklarasi Variabel Array
 Bentuk Deklarasi:
tipePrimitif[] namaVariabel;
namaKelas[] namaVariabel;
 Contoh:
String[] kota;
int[] nomor;
Menciptakan Objek Array
 Bentuk Deklarasi:
namaVariabel = new tipePrimitif[jumlahElemen];
namaVariabel = new namaKelas[jumlahElemen];
 Contoh:
nomor = new int[7];
kota = new String[8];
 Bentuk singkat deklarasi variable dan objek
array:
String[] kota = new String[8];
int[] nomor = new int[7];
Mengakses Elemen Array
 Bentuk Deklarasi
namaVariabelArray[nomorElemen];
 Contoh:
kota[0] = “Surabaya”;
ArrayKota.java
public class ArrayKota{
public static void main(String[] args){
String[] kota; //deklarasi variabel array
kota = new String[3]; // membuat objek array
// mengisi elemen array
kota[0] = "Jakarta";
kota[1] = "Surabaya";
kota[2] = "Semarang";
// menampilkan elemen array
System.out.println(kota[0]);
System.out.println(kota[1]);
System.out.println(kota[2]);
}
}
Pemberian Nilai Array
public class ArrayKota2{
public static void main(String[] args){
String[] kota = {“Jakarta”, “Surabaya”, “Semarang”};
// menampilkan elemen array
System out println(kota[0]);
System.out.println(kota[1]);
System.out.println(kota[2]);
}
}
Pemberian nilai dapat langsung dilakukan ketika objek array diciptakan
Mengetahui Jumlah Elemen Array
public class ArrayKota3{
public static void main(String[] args){
String[] kota = {“Jakarta”, “Surabaya”, “Semarang”};
// menampilkan elemen array
for(int i=0; i<kota.length; i++)
System.out.println(kota[i]);
}
}
Jumlah elemen Array dapat diketahui dengan instance variable
bernama length
Array Multidimensi
class ArrayMultidimensi {
public static void main(String[] args) {
String[][] nama = {
{"Pak ", "Bu “, “Mbak”},
{"Joko", "Susi"}
};
System.out.println(nama[0][0] + nama[1][0]);
System.out.println(nama[0][1] + nama[1][1]);
System.out.println(nama[0][2] + nama[1][0]);
}
}
Array multidimensi adalah array dari array , dengan konsep
pengaksesan [noBaris][noKolom]
Latihan: Buat Array Multidimensi
1. Buat class NegaraKota
2. Buat array multidimensi untuk nama negara dan
ibukotanya
3. Masukkan dalam list array:
nama negara = Amerika, Inggris, Jepang, Perancis,
Indonesia, Iran, Irak
ibukota =Teheran, Bekasi, Jakarta, Bantar Gebang,
Tokyo
4. Akses array dan tampilkan di layar sebagai berikut:
Ibukota Indonesia adalah Jakarta
Ibukota Jepang adalah Tokyo
Ibukota Iran adalah Teheran
Operator
Operator
 Operator adalah simbol dan karakter
khusus (matematika) yang digunakan
dalam suatu ekspresi
 Contoh:
 int x = 3;
 int y = x;
 int z = x * y;
 boolean status = true;
Jenis Operator Berdasar Operand
1. Operator Unary: operator yang
melibatkan satu operand
2. Operator Binary: operator yang
melibatkan dua operand
3. Operator Ternary: operator yang
melibatkan tiga operand
Jenis Operator
1. Operator Aritmatika
2. Operator Penugasan
3. Operator Penggabungan
4. Operator Penambahan dan Pengurangan
5. Operator Bit
6. Operator Pembanding
7. Operator Logika
Operator Aritmatika
 Hasil operasi matematika akan mengikuti tipe data
operand
 Operand bertipe int akan menghasilkan int
Operator Meaning Example
+ Addition 3 + 4
- Subtraction 5 - 7
* Multiplication 5 * 5
/ Division 14 / 7
% Modulus 20 % 7
Operator Penugasan
 Operator penugasan berguna untuk
memberi nilai ke suatu variabel
 Operator penugasan menggunakan
tanda sama dengan ( = )
 Operator penugasan digabungkan
dengan operator aritmatika
membentuk operator penugasan
gabungan (compound assignment)
Operator Penugasan Gabungan
Expression Meaning
x += y x = x + y
x -= y x = x - y
x *= y x = x * y
x /= y x = x / y
Operator Penggabungan
 Operator + dapat digunakan untuk
penggabungan String dan String maupun
String dan Bilangan
 Contoh:
System.out.println(“Saya adalah” + “Mahasiswa”);
System.out.println(“Jumlah Mahasiswa” + 30);
Penambahan dan Pengurangan
 Penambahan: menambahkan 1 ke nilai variabel
(operator = ++, prefix atau postfix)
int x=5; int x=5;
y = x++; y = ++x;
(nilai saat ini : y = 5, x=6) (nilai saat ini: y = 6, x=6)
 Pengurangan: mengurangkan 1 ke nilai variabel
(operator = --)
int x=5; int x=5;
y = x--; y = --x;
(nilai saat ini: y = 5, x=4) (nilai saat ini: y = 4, x=4)
Latihan: Tampilkan Nilai x, y dan z
Penambahan.java
int x, y, z;
x = 42;
y = x++;
//tampilkan x, y saat ini
z = ++x;
//tampilkan x, z saat ini
Pengurangan.java
int x, y, z;
x = 42;
y = x--;
//tampilkan x, y saat ini
z = --x;
//tampilkan x, z saat ini
Latihan: Tampilkan Nilai x, y,w dan z
Penambahan2.java
int w, x, y, z;
x = 5; w =5 ;
y = 8 - x++;
z = 8 - ++w;
Pengurangan2.java
int w,x, y, z;
x = 5; w =5 ;
y = 8 – x--;
z = 8 - --w;
Operator Bit
& operasi AND untuk bit
| operasi OR untuk bit
^ operasi Ex OR untuk bit
~ operasi NOT untuk bit
<< geser kiri (geser 1 bit = *2)
>> geser kanan (geser 1 bit = /2)
>>> geser kanan tak bertanda
Latihan: Program Kali dan Bagi 2
 Buat program yang menghitung
perkalian (*) dan pembagian (/)
dengan bilangan dua (2) tanpa
operator matematika
 Catatan = x >> n = x/2n
Operator Pembanding (Relasional)
Operator Meaning Example
== Equal x == 3
!= Not equal x != 3
< Less than x < 3
> Greater than x > 3
<= Less than or equal to x <= 3
>= Greater than or equal to x >= 3
Operator pembanding menggunakan ekspresi
dengan nilai balik boolean (true or false)
Latihan: Tampilkan hasilBanding1 dan 2
Pembanding.java
int age = 36;
boolean hasilBanding1 = age < 25;
boolean hasilBanding2 = age != 26;
//Tampilkan hasilBanding1 dan hasilBanding2
Operator Logika
&& operasi logika AND
| | operasi logika OR
! operasi logika NOT
Operator logika menggunakan ekspresi
dengan nilai balik Boolean (true or false)
Urutan Eksekusi Operator
 Secara umum urutan eksekusi operator:
1. Operasi Penambahan dan Pengurangan
2. Operasi Aritmatika
3. Operasi Pembandingan
4. Operasi Logika
5. Operasi Penugasan
 Apabila urutan sama, sebelah kiri dieksekusi
terlebih dahulu daripada sebelah kanan
 Khusus untuk operator = dan += sebelah kanan
dieksekusi terlebih dahulu
Operasi I/O Stream
Sederhana
Stream Standard
1. System.in: menangani pembacaan dari
keyboard (standard input)
2. System.out: mengirimkan keluaran ke
layar (standard output)
3. System.err: mengirimkan kesalahan
(standard error)
Membaca Input dari Keyboard
Menggunakan class Scanner (java.util.Scanner)
dengan method sebagai berikut:
1. nextInt(): untuk menerima tipe data integer
2. nextShort(): untuk menerima tipe data short
3. nextLong(): untuk menerima tipe data long
4. nextDouble(): untuk menerima tipe data double
5. nextFloat(): untuk menerima tipe data float
6. nextLine(): untuk menerima tipe data string
7. nextBoolean(): untuk menerima tipa data boolean
SalamKenal.java
import java.util.Scanner;
public class SalamKenal {
public static void main( String[] args ){
Scanner masukan = new Scanner(System.in);
System.out.print("Masukkan Nama Anda: ");
String nama = masukan.nextLine();
System.out.println("Halo, Salam Kenal sdr " + nama +"!");
}
}
Perkalian.java
public class Perkalian{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("Masukkan bilangan pertama: ");
int bilangan1 = input.nextInt();
System.out.print("Masukkan bilangan kedua: ");
int bilangan2 = input.nextInt();
System.out.print("Hasil perkalian: " +
(bilangan1 * bilangan2));
}
}
Latihan
Ubah class LuasSegitiga dengan nilai alas dan tinggi
dimasukkan oleh user lewat prompt (gunakan
class Scanner)
public class LuasSegitiga {
public static void main(String[] args) {
double alas= 17; double tinggi = 11;
double luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Tampilan Program
Program Penghitung Luas Segitiga
Masukkan Alas = 13
Masukkan Tinggi = 24
Jadi, Luas Segitiga adalah =
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
double alas= Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
double luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Tampilan Program
%java LuasSegitigaArgs 2 18
Luas Segitiga: 18
Argument untuk Menerima Input (Rev)
public class LuasSegitigaArgs {
public static void main(String[] args) {
if (args.length == 2){
double alas = Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
double luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}else{
System.out.println("Penggunaan Argument Salah!");
System.out.println("Contoh: java LuasSegitigaArgs 30 20");
}
}
}
Tampilan Program
%java LuasSegitigaArgs 2 18 67
Penggunaan Argument Salah!
Contoh: java LuasSegitigaArgs 30 20
Konversi String dan
Bilangan (Number)
Konversi String ke Bilangan
String myString;
double myDbl = Double.parseDouble(myString);
Integer.parseInt(myString);
Float.parseFloat(myString);
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
double alas= Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]);
double luas = (alas*tinggi)/2;
System.out.println("Luas Segitiga : " + luas);
}
}
Konversi Bilangan ke String
double myDouble;
int myInteger;
float myFloat;
Double.toString(myDouble);
Integer.toString(myInteger);
Float.toString(myFloat);
Pengaturan Format
Output Numerik
Metode Pengaturan Format
1. Menggunakan Method System.out.format()
2. Menggunakan DecimalFormat Class
1. Method System.out.format()
public class TestFormat {
public static void main(String[]
args) {
long n = 461012;
System.out.format("%d%n",
n);
System.out.format("%08d%n",
n);
System.out.format("%+8d%n",
n);
System.out.format("%,8d%n",
n);
System.out.format("%+,8d%n%n
", n);
Calendar c =
Calendar.getInstance();
System.out.format("%tB %te,
%tY%n", c, c, c);
System.out.format("%tl:%tM
%tp%n", c, c, c);
System.out.format("%tD%n", c);
}
}
Hasil Eksekusi
461012
00461012
+461012
461,012
+461,012
3.141593
3.142
3.142
3.142
May 29, 2006
2:34 am
05/29/06
Converters and Flags
Conver
ter
Flag Explanation
d A decimal integer.
f A float.
n
A new line character appropriate to the platform running the
application. You should always use %n, rather than n.
tB A date & time conversion—locale-specific full name of month.
td, te
A date & time conversion—2-digit day of month. td has leading zeroes
as needed, te does not.
ty, tY A date & time conversion—ty = 2-digit year, tY = 4-digit year.
tl A date & time conversion—hour in 12-hour clock.
tM
A date & time conversion—minutes in 2 digits, with leading zeroes as
necessary.
tp A date & time conversion—locale-specific am/pm (lower case).
tm
A date & time conversion—months in 2 digits, with leading zeroes as
necessary.
tD A date & time conversion—date as %tm%td%ty
08 Eight characters in width, with leading zeroes as necessary.
+ Includes sign, whether positive or negative.
, Includes locale-specific grouping characters.
2. DecimalFormat Class
public class DecimalFormatDemo {
static public void customFormat(String pattern, double value ) {
DecimalFormat myFormatter = new DecimalFormat(pattern);
String output = myFormatter.format(value);
System.out.println(value + " " + pattern + " " + output);
}
static public void main(String[] args) {
customFormat("###,###.###", 123456.789);
customFormat("###.##", 123456.789);
customFormat("000000.000", 123.78);
customFormat("$###,###.###", 12345.67);
}
}
Hasil Eksekusi
123456.789 ###,###.### 123,456.789
123456.789 ###.## 123456.79 123.78
000000.000 000123.780 12345.67
$###,###.### $12,345.67
DecimalFormat Class
Value Pattern Output Explanation
123456.789 ###,###.### 123,456.789
The pound sign (#) denotes a
digit, the comma is a placeholder
for the grouping separator, and the
period is a placeholder for the
decimal separator.
123456.789 ###.## 123456.79
The value has three digits to the
right of the decimal point, but the
pattern has only two. The format
method handles this by rounding
up.
123.78 000000.000 000123.780
The pattern specifies leading and
trailing zeros, because the 0
character is used instead of the
pound sign (#).
The first character in the pattern is
the dollar sign ($). Note that it
Pernyataan Penentu
Keputusan
Pernyataan Penentu Keputusan
1. if, if-else, if-else if – else
2. switch
if
 Pernyataan kondisi yang digunakan
untuk pengambilan keputusan terhadap
dua buah kemungkinan
 if bisa berdiri sendiri atau dengan
menggunakan else
 Bentuk:
if(kondisi){
// blok pernyataan yang dijalankan, bila kondisi benar
}
PernyataanIF.java
public class PernyataanIF{
public static void main(String[] args){
int diskon =0, totalBelanja = 500000;
if(totalBelanja >= 100000){
diskon = totalBelanja/10;
}
System.out.println("Diskon = " + diskon);
}
}
if-else
 if-else mengatur pernyataan yang
dijalankan sewaktu kondisi bernilai
benar atau salah
 Bentuk:
if(kondisi){
// blok pernyataan yang dijalankan, bila kondisi benar
} else{
// blok pernyataan yang dijalankan, bila kondisi salah
}
PernyataanIFELSE.java
public class PernyataanIFELSE{
public static void main(String[] args){
int diskon =0, totalBelanja = 500000;
if(totalBelanja >= 100000){
diskon = totalBelanja/10;
} else{
diskon = 0;
}
System.out.println("Diskon = " + diskon);
}
}
Latihan
Kembangkan class
PernyataanIFELSE supaya nilai
Total Belanja bisa dimasukan
melalui input dari keyboard
(gunakan class Scanner)
if-else if-else
 Mengatur pernyataan yang dijalankan sewaktu
kondisi berupa pilihan
 Bentuk:
if(kondisiA){
// pernyataan yang dijalankan, bila kondisiA benar
}else if(kondisiB){
// pernyataan yang dijalankan, bila kondisiB benar
}else if(kondisiC){
// pernyataan yang dijalankan, bila kondisiC benar
}else{
// pernyataan yang dijalankan untuk kondisi selain itu
}
PernyataanIFELSEIF.java
public class PernyataanIFELSEIF{
public static void main(String[] args) {
int skorUjian= 86; char nilai;
if (skorUjian >= 90) {
nilai = 'A';
} else if (skorUjian >= 80) {
nilai = 'B';
} else if (skorUjian >= 70) {
nilai = 'C';
} else {
nilai = 'D';
}
System.out.println("Nilai = " + nilai);
}
}
Latihan
Kembangkan class
PernyataanIFELSEIF supaya bisa
menerima masukan (input) data
langsung dari user
Tampilan Program:
Masukkan Skor Ujian = X
Nilai untuk skor ujian X adalah Z
Operator Ternary (Kondisi)
 Pernyataan kondisi yang
menggunakan operator ternary
(melibatkan tiga buah operand)
 Bentuk:
ekspresi_kondisi ? nilai_1 : nilai_2
OperatorTernary.java
public class OperatorTernary{
public static void main(String[] args){
int totalBelanja = 500000;
int diskon = totalBelanja >= 100000 ?totalBelanja/10 : 0;
System.out.println("Diskon = " + diskon);
}
}
switch
 Switch digunakan untuk melakukan tindakan
berbeda terhadap sejumlah kemungkinan nilai
 Bentuk:
switch(ekspresi){
case nilaiSatu:
Pernyataan 1
break;
case nilaiDua:
Pernyataan2
break;
...
default: PernyataanN;
}
PernyataanSWITCH1.java
public class PernyataanSWITCH1{
public static void main(String[] args){
int pilihan = 3;
switch(pilihan){
case 1:
System.out.println("Soto Ayam");
break;
case 2:
System.out.println("Gule Kambing");
break;
case 3:
System.out.println("Nasi Goreng");
break;
default:
System.out.println("Silakan Pilih 1, 2 atau 3");
}
}
Latihan
 Kembangkan class PernyataanSWITCH1
supaya bisa menerima masukan (input) data
langsung dari user lewat prompt
 Tampilan awal:
> 1. Soto Ayam 2. Gule Kambing 3. Nasi Goreng
> Pilih menu apa? 1
> Menu yang anda pilih adalah Soto Ayam
PernyataanSWITCH2.java
public class PernyataanSWITCH2{
public static void main(String[] args){
int pilihan = 3;
switch(pilihan){
case 1:
case 2:
case 3:
case 4:
case 5:
System.out.println("Hari Kerja");
break;
case 6:
case 7:
System.out.println("Hari Libur");
break;
default:
System.out.println("Silakan Pilih Hari");
}}}
Latihan: Menentukan Jumlah Hari
 Buat program (dengan SWITCH) untuk
menghitung berapa jumlah hari pada
suatu bulan dan tahun yang ditunjuk
 Bulan dan tahun dimasukkan dengan
input dari keyboard (class Scanner)
 Tampilkan hasilnya dengan:
Masukkan tahun: 1900
Masukan bulan: 2
Jumlah hari pada tahun 1900 bulan 2 adalah 28 hari
Pernyataan
Pengulangan Proses
(Loop)
Pernyataan Pengulangan Proses
1. for
2. while
3. do-while
for
 for sering disebut for loop, karena
digunakan untuk proses looping atau
pengulangan
 Bentuk:
for (inisialisasi; kondisi; penaikan_penurunan){
pernyataan
}
PernyataanFOR.java
public class PernyataanFOR {
public static void main(String[] args){
for(int i=1; i<11; i++){
System.out.println(i);
}
}
}
PernyataanFOREnhanced.java
class PernyataanFOREnhanced {
public static void main(String[] args){
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int i : numbers) {
System.out.println(i);
}
}
}
while
 while digunakan untuk melakukan
proses pengulangan suatu blok
pernyataan selama kondisinya bernilai
true
 Bentuk:
while (kondisi) {
pernyataan
}
PernyataanWHILE.java
class PernyataanWHILE {
public static void main(String[] args){
int i = 1;
while (i < 11) {
System.out.println(i);
i++;
}
}
}
Latihan: Tampilkan Bilangan Genap
Tampilkan bilangan genap antara 1
sampai 20 dengan menggunakan:
1. Pernyataan FOR
2. Pernyataan WHILE
do...while
 do ... while digunakan untuk melakukan
proses pengulangan suatu blok pernyataan
selama kondisinya bernilai true
 Pernyataan dalam blok paling tidak
dieksekusi satu kali
 Bentuk:
do {
pernyataan
} while (kondisi);
PernyataanDOWHILE.java
class PernyataanDOWHILE {
public static void main(String[] args){
int i = 1;
do {
System.out.println(i);
i++;
} while (i <= 10);
}
}
Pernyataan
Pemindah Proses
(Jump)
Pernyataan Pemindah Proses
1. return
2. break
3. continue
return
 Digunakan untuk keluar dari method
 return memiliki dua bentuk:
1. mengembalikan nilai (sesuai dengan tipe data)
2. tidak mengembalikan nilai (untuk void)
 Contoh:
int perkalian(int x, int y){
return x * y;
}
void perkalian(int x, int y){
hasilKali = x * y;
return;
}
break
 Penyataan break digunakan untuk
keluar dari suatu pengulangan
(loop)
 Penggunaan break bisa berbentuk
tanpa label atau berlabel
PernyataanBREAK.java
public class PernyataanBREAK {
public static void main(String[] args){
for(int i=1; i<11; i++){
if(i==5) break;
System.out.println(i);
}
}
}
PernyataanBREAKLABEL.java
public class PernyataanBREAK {
public static void main(String[] args){
selesai:
for(int i=1; i<11; i++){
if(i==5) break selesai;
System.out.println(i);
}
}
}
continue
 Digunakan untuk melanjutkan
eksekusi ke suatu pengulangan
(loop)
 Bisa berbentuk tanpa label atau
berlabel
 Bentuk code persis sama dengan
break, baik untuk yang tanpa label
atau berlabel
Latihan: Modifikasi Matematika.java
 Modifikasi program Matematika.java yang
sebelumnya sudah kita buat dengan
menggunakan tipe data double untuk
method
 Input data adalah lewat prompt (class
Scanner)
 Buat menu pilihan untuk fitur pertambahan,
pengurangan, pembagian atau perkalian
 Gunakan pengulangan untuk menu pilihan.
Akan berhenti apabila kita pilih 0
Tampilan
Menu Aplikasi Matematika:
1. Pertambahan 2. Pengurangan 3. Perkalian 4. Pembagian
0. Keluar Aplikasi
Pilih Menu = 1
Masukkan Angka Pertama = 3
Masukkan Angka Kedua =23
Hasil Pertambahan antara 3 dan 23 adalah 26
Menu Aplikasi Matematika:
1. Pertambahan 2. Pengurangan 3. Perkalian 4. Pembagian
0. Keluar Aplikasi
Pilih Menu =
Latihan: Aplikasi Restoran
1. Buat sistem manajemen restoran berbasis
text
2. Harga semua masakan adalah Rp. 15.000
3. Sistem akan melakukan pengulangan
tampilan Pilih Menu, sampai dipilih menu 5
(Hitung Total) atau menu 6 (Keluar
Aplikasi))
4. Sistem akan melakukan pengulangan
tampilan Menu Restoran, sampai dipilih
menu 6 (Keluar Aplikasi))
Tampilan Sistem
Menu Restoran:
1. Nasi Goreng 2. Nasi Rawon 3. Nasi Gudeg 4. Jus Jeruk
5. Hitung Total 6. Keluar Aplikasi
Pilih Menu? 1
Pilih Menu? 4
(mengulang ke tampilan Pilih Menu, sampai dipilih menu 5
(Hitung Total) atau menu 6 (Keluar Aplikasi))
Pilih Menu? 5
Pilihan menu adalah Nasi Goreng dan Jus Jeruk.
Total yang harus dibayar adalah Rp. 30.000
(mengulang ke tampilan Menu Restoran, sampai dipilih menu 6
(Keluar Aplikasi))
Referensi -1-
 Sharon Zakhour et al, The Java Tutorial Fourth
Edition, http://java.sun.com/docs/books/tutorial
 Deitel & Deitel, Java How to Program 7th Edition,
Prentice Hall, 2007
 Deitel & Deitel, Java for Programmers, Prentice Hall,
2009
 Kathy Sierra & Bert Bates, Head First Java 2nd
Edition, O’Reilly, 2005
 Rogers Cadenhead & Laura Lemay, Teach Yourself
Java 6 in 21 Days, Sams Publishing, 2007
 Robert Lafore, Data Structures and Algorithms in Java
Second Edition, Sams Publishing, 2003
Referensi -2-
 Tim Pengembang JENI, JENI 1-6, Depdiknas,
2007
 Indrajani dan Martin, Pemrograman Berbasis Objek
dengan Java, Elex Media Komputindo, 2007
 LN Harnaningrum, Algoritma dan Pemrograman
Java, Graha Ilmu, 2009
 Rachmad Hakim & Sutarto, Mastering Java, Elex
Media Komputindo, 2009
 Miftakhul Huda dan Bunafit Komputer, Membuat
Aplikasi Database dengan Java, MySQL, dan
Netbeans, Elex Media Komputindo, 2010

Weitere ähnliche Inhalte

Was ist angesagt?

Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Ekha Cahya Nugraha
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaAs Faizin
 
Cara membuat fungsi dan prosedur pada java
Cara membuat fungsi dan prosedur pada javaCara membuat fungsi dan prosedur pada java
Cara membuat fungsi dan prosedur pada javaDevandy Enda
 
Modul ix dan x algo
Modul ix dan x algoModul ix dan x algo
Modul ix dan x algoSTMIK AKAKOM
 
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Putra Andry
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)Debby Ummul
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Debby Ummul
 
Pengenalan Java
Pengenalan JavaPengenalan Java
Pengenalan JavaLaili Aidi
 
contoh Program sederhana Java dan penjelasan programnya
contoh Program sederhana Java dan penjelasan programnyacontoh Program sederhana Java dan penjelasan programnya
contoh Program sederhana Java dan penjelasan programnyastephan EL'wiin Shaarawy
 
Tipe data pada java
Tipe data pada javaTipe data pada java
Tipe data pada javarahmat s
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objekAlvin Setiawan
 
Interaksi antar objek
Interaksi antar objekInteraksi antar objek
Interaksi antar objekKurjum Usman
 

Was ist angesagt? (20)

Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13Laporan praktikum Algoritma dan Pemrograman pertemuan 13
Laporan praktikum Algoritma dan Pemrograman pertemuan 13
 
Tipe Data pada Bahasa Java
Tipe Data pada Bahasa JavaTipe Data pada Bahasa Java
Tipe Data pada Bahasa Java
 
Cara membuat fungsi dan prosedur pada java
Cara membuat fungsi dan prosedur pada javaCara membuat fungsi dan prosedur pada java
Cara membuat fungsi dan prosedur pada java
 
Modul ix dan x algo
Modul ix dan x algoModul ix dan x algo
Modul ix dan x algo
 
Pertemuan vi (Function Java)
Pertemuan vi (Function Java)Pertemuan vi (Function Java)
Pertemuan vi (Function Java)
 
Jeni Intro2 Bab13 Pengenalan Generics
Jeni Intro2 Bab13 Pengenalan GenericsJeni Intro2 Bab13 Pengenalan Generics
Jeni Intro2 Bab13 Pengenalan Generics
 
Java2
Java2Java2
Java2
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.7)
 
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
Modul Praktikum Pemrograman Berorientasi Objek (Chap.8-9)
 
Pengenalan Java
Pengenalan JavaPengenalan Java
Pengenalan Java
 
contoh Program sederhana Java dan penjelasan programnya
contoh Program sederhana Java dan penjelasan programnyacontoh Program sederhana Java dan penjelasan programnya
contoh Program sederhana Java dan penjelasan programnya
 
Tipe data dan variabel
Tipe data dan variabelTipe data dan variabel
Tipe data dan variabel
 
2 Array
2 Array2 Array
2 Array
 
Tipe data pada java
Tipe data pada javaTipe data pada java
Tipe data pada java
 
4 Adt
4 Adt4 Adt
4 Adt
 
Ppt
PptPpt
Ppt
 
Pertemuan V
Pertemuan VPertemuan V
Pertemuan V
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objek
 
Bab8.array
Bab8.array Bab8.array
Bab8.array
 
Interaksi antar objek
Interaksi antar objekInteraksi antar objek
Interaksi antar objek
 

Ähnlich wie Romi oop-02-javafundamentals-29agustus2010

Object oriented programming menggunakan java
Object oriented programming menggunakan javaObject oriented programming menggunakan java
Object oriented programming menggunakan javaAntara BoyKean
 
Slid_3_OOP.pptx
Slid_3_OOP.pptxSlid_3_OOP.pptx
Slid_3_OOP.pptxTashid2
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekKuncara Laksana
 
Pelatihan Bahasa R
Pelatihan Bahasa RPelatihan Bahasa R
Pelatihan Bahasa Ranom0164
 
Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul viiDevi Apriansyah
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangIndividual Consultants
 
Pengenalan pascal asli
Pengenalan pascal asliPengenalan pascal asli
Pengenalan pascal asliNadya Olivia
 
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptx
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptxPEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptx
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptxBBXSQUAD
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdfJurnal IT
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdfJurnal IT
 
Algoritma & Pemograman - 02. Variabel dan Tipe Data
Algoritma & Pemograman - 02. Variabel dan Tipe DataAlgoritma & Pemograman - 02. Variabel dan Tipe Data
Algoritma & Pemograman - 02. Variabel dan Tipe DataFakhrian Fadlia Adiwijaya
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritmaAkhmad Asari
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekimam arifin
 
Pbo fundamental
Pbo fundamentalPbo fundamental
Pbo fundamentalJogal
 
Pengenalan pascal
Pengenalan pascalPengenalan pascal
Pengenalan pascalfhnx
 

Ähnlich wie Romi oop-02-javafundamentals-29agustus2010 (20)

Object oriented programming menggunakan java
Object oriented programming menggunakan javaObject oriented programming menggunakan java
Object oriented programming menggunakan java
 
Pert 3, Teori PBO
Pert 3, Teori PBOPert 3, Teori PBO
Pert 3, Teori PBO
 
Slid_3_OOP.pptx
Slid_3_OOP.pptxSlid_3_OOP.pptx
Slid_3_OOP.pptx
 
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis ObjekLaporan Modul 1 Praktikum Pemrograman Berbasis Objek
Laporan Modul 1 Praktikum Pemrograman Berbasis Objek
 
Java numbers
Java numbersJava numbers
Java numbers
 
Pelatihan Bahasa R
Pelatihan Bahasa RPelatihan Bahasa R
Pelatihan Bahasa R
 
Laporan praktikum modul vii
Laporan praktikum modul viiLaporan praktikum modul vii
Laporan praktikum modul vii
 
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.LangJeni Intro2 Bab04 Tour Dari Package Java.Lang
Jeni Intro2 Bab04 Tour Dari Package Java.Lang
 
Pengenalan pascal asli
Pengenalan pascal asliPengenalan pascal asli
Pengenalan pascal asli
 
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptx
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptxPEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptx
PEMORGRAMAN BERORIENTASI OBJEK-02 Teknologi JAVA.pptx
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf
 
1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf1_Pengenalan_Java.pdf
1_Pengenalan_Java.pdf
 
Algoritma & Pemograman - 02. Variabel dan Tipe Data
Algoritma & Pemograman - 02. Variabel dan Tipe DataAlgoritma & Pemograman - 02. Variabel dan Tipe Data
Algoritma & Pemograman - 02. Variabel dan Tipe Data
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritma
 
Pengenalan java-oop
Pengenalan java-oopPengenalan java-oop
Pengenalan java-oop
 
Arrays c++
Arrays c++Arrays c++
Arrays c++
 
Modul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objekModul praktikum java pemrograman berorientasi objek
Modul praktikum java pemrograman berorientasi objek
 
Pbo fundamental
Pbo fundamentalPbo fundamental
Pbo fundamental
 
Pengenalan pascal
Pengenalan pascalPengenalan pascal
Pengenalan pascal
 
Laporan tugas struktur data
Laporan tugas struktur dataLaporan tugas struktur data
Laporan tugas struktur data
 

Romi oop-02-javafundamentals-29agustus2010

  • 1. OOP: Java Fundamentals Romi Satria Wahono romi@romisatriawahono.net http://romisatriawahono.net HP: 0878-80480485
  • 2. Materi 1. OOP Concepts: Konsep dan Paradigma Object-Oriented 2. Java Fundamentals: Memahami Sintaks dan Grammar Bahasa Java 3. Java Advanced: Eksepsi, Thread, Java API 4. Java GUI: Swing, GUI Component, Event Handling, Studi Kasus Aplikasi GUI 5. Java Database: Koneksi ke Database, Studi Kasus Aplikasi Database
  • 4. Java Fundamentals 1. Pernyataan dan Ekspresi 2. Variabel, Tipe Data dan Literal 3. Array 4. Operator 5. Operasi I/O Stream Sederhana 6. Pengaturan Format Output Numerik 7. Konversi String dan Bilangan (Number) 8. Pernyataan Penentu Keputusan 9. Pernyataan Pengulangan Proses 10. Pernyataan Pemindah Proses
  • 6. Pernyataan  Perintah yang menyebabkan sesuatu terjadi dan merepresentasikan aksi tunggal dalam program Java Contoh: int tahunProduksi;  Setiap pernyataan ditutup oleh karakter semicolon (;)  Pernyataan dikelompokkan dengan tanda pembuka ({) dan penutup (}). Kelompok ini disebut blok atau blok pernyataan
  • 7. Ekspresi  Pernyataan yang dapat menghasilkan suatu nilai. Nilai yang dihasilkan oleh pernyataan ini yang disebut dengan nilai balik (return value)  Nilai balik bisa berupa bilangan, boolean, atau objek  Method tanpa nilai balik biasanya menggunakan keyword void  Contoh: hasilBagi = a / b;
  • 8. Kata Kunci abstract private case interface continue this enum static for break instanceof void new double return class switch implements transient finally assert protected catch long default throw extends strictfp package byte int volatile synchronized else short float boolean import try native do public char super if throws final while
  • 10. Variabel  Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)  Nilai variabel dapat diubah di pernyataan manapun di dalam program  Mendeklarasikan variabel: tipe namaVariabel1 [, namaVariabel2]  Contoh: int hasilKali; String namaSiswa, namaGuru, namaAdmin;
  • 11. Lingkup Variabel Variabel dipanggil berdasarkan lingkupnya, dimulai dari blok yang paling kecil, kemudian blok di luar itu 1. Local Variable: digunakan di dalam method atau blok pernyataan yang lebih kecil dari itu 2. Parameter: variabel yg ada di dalam pernyataan (argument) method 3. Instance Variable: variabel yang memiliki nilai yang berbeda di setiap objek 4. Class Variable: variabel yang berlaku di suatu class dan seluruh instan dari class tersebut (objek). Ciri class variable adalah menggunakan keyword static
  • 12. Bilangan.java public class Bilangan { static int pencacah = 0; int nilai; public Bilangan(int nilai){ this.nilai = nilai; pencacah++; } public void info(){ System.out.println("Nilai:“ + this.nilai); System.out.println("Pencacah:“ + pencacah); System.out.println(""); } }
  • 13. BilanganBeraksi.java public class BilanganBeraksi{ public static void main(String[] args){ Bilangan b1 = new Bilangan(50); b1.info(); Bilangan b2 = new Bilangan(15); b2.info(); Bilangan b3 = new Bilangan(30); b3.info(); } }
  • 14. Memberi Nilai Variabel  Menggunakan tanda sama dengan (=)  Kebiasaan yang baik untuk memberi nilai awal (initial value) pada local variabel (mencegah bug pada program)  Contoh: int hasilTambah = 0; boolean status = false;
  • 15. Memberi Nama Variabel  Gunakan lowercase untuk variabel yang terdiri dari satu kata atau kata pertama  Gunakan kapital untuk karakter pertama dari kata kedua, ketiga, dst  Contoh: int hasil; boolean statusMesinMobil; Button openFile;
  • 16. Penentu Akses  Private: pengaksesan suatu instance variabel dan method hanya dapat dilakukan di dalam class ( tidak bisa dari dari luar class)  Tanpa Tanda: pengaksesan suatu instance variabel dan method dapat dilakukan di dalam kelas dan kelas lain dalam satu paket  Public: pengaksesan suatu instance variable dan method dapat dilakukan dari luar (sembarang) kelas
  • 17. 18 Class Acces Level Specifier Class Package SubClass World private  no specifier   protected    public    
  • 18. Tipe Data 1. Tipe Data Primitif  Sebagai kata kunci di Java (lowercase)  Embedded di compiler Java  Pemrosesan relatif cepat  Contoh: int, double 2. Tipe Data Reference  Class yang ada di library Java (java.lang)  Menggunakan huruf capital  Contoh: String, Integer, Double
  • 19. Tipe Data Primitif 1. byte 2. short 3. int 4. long 5. float 6. double 7. char 8. boolean Catatan:  Secara umum jenis tipe data: bilangan bulat, pecahan, karakter dan boolean  Hasil operasi matematika akan mengikuti tipe data dari operand
  • 20. Tipe Data Primitif Keterangan Ukuran Jangkauan byte Bilangan bulat 8 bit -128  127 short Bilangan bulat 16 bit -32.768  32.767 int Bilangan bulat 32 bit -2.147.483.648  2.147.483.647 long Bilangan bulat 64 bit -9.223.372.036.854.775,808  9.223...807 float Bilangan pecahan 32 bit (presisi 6-7 bit) -3.4E38  3.4E38 double Bilangan pecahan 64 bit (presisi 14-15 bit) -1.7E308  1.7E308 char Karakter (unicode) 16 bit u0000  uffff boolean Logika (true/false)
  • 21. Karakter.java public class Karakter{ public static void main(String[] args){ char karakter1=88, karakter2='X', karakter3='Y'; System.out.println("Karakter 1: " + karakter1); System.out.println("Karakter 2: " + karakter2); System.out.println("Karakter 3: " + karakter3); } }
  • 22. Constant Variable (Konstanta)  Constant Variable digunakan apabila kita ingin membuat nilai sebuah variable tidak berubah (tetap)  Constant variable menggunakan keyword final di depan tipe data, kadang sering juga digabungkan dengan keyword static. Nama constant variable biasanya menggunakan kapital  Contoh: final float PI = 3.141592; static final boolean DEBUG = false;
  • 23. Literal Semua informasi (bilangan, karakter, string, boolean ) yang merepresentasikan suatu nilai  Literal Bilangan (bulat dan pecahan):  int tahun = 2008; long nilai = 4L  double myScore = 2.25; float piValue = 3.1415927F;  double x = 12e22; double y = 19E-95;  Literal Boolean (true dan false):  boolean pilihan = true;  Literal String:  String quitMsg = “Yakin Ingin Keluar?”;  Literal Karakter (unicode)
  • 24. Character Escape Escape Meaning n New line t Tab b Backspace r Carriage return f Formfeed Backslash ' Single quotation mark " Double quotation mark d Octal xd Hexadecimal ud Unicode character
  • 25. Pengarah Tipe (Type-Casting)  Pengarah Tipe (Type-Casting)  Contoh: int i = 10; char paksa = (char) i;  Casting tanpa menghilangkan nilai: Tipe Sumber Tipe Tujuan byte short, char, int, long, float, double short int, long, float, double char int, long, float, double int long, float, double long float, double float double
  • 26. LuasSegitiga.java public class LuasSegitiga { public static void main(String[] args) { int alas= 17; int tinggi = 11; double luas = (double) (alas*tinggi)/2; System.out.println("Luas Segitiga : " + luas); } }
  • 27. Latihan: Hitung Luas Lingkaran  Buat class Lingkaran yang mempunyai method menghitung luas lingkaran void hitungLuas(double r){ ... }  Rumus luas lingkaran= PI* r * r  PI adalah konstanta dengan nilai 3. 141592  r adalah jari-jari lingkaran  Buat class LingkaranBeraksi, yang menampilkan hasil perhitungan luas lingkaran dalam dua bentuk: pecahan dan bulat (type-casting). Beri nilai r = 11.78
  • 29. Konsep Array (Larik)  Array adalah objek yang dapat digunakan untuk menyimpan sejumlah data  Elemen yang disimpan pada array dapat berupa tipe primitif (int, float, etc) atau objek (instan dari class)  Langkah menciptakan array: 1. Mendeklarasikan variabel array 2. Menciptakan objek array
  • 30. Deklarasi Variabel Array  Bentuk Deklarasi: tipePrimitif[] namaVariabel; namaKelas[] namaVariabel;  Contoh: String[] kota; int[] nomor;
  • 31. Menciptakan Objek Array  Bentuk Deklarasi: namaVariabel = new tipePrimitif[jumlahElemen]; namaVariabel = new namaKelas[jumlahElemen];  Contoh: nomor = new int[7]; kota = new String[8];  Bentuk singkat deklarasi variable dan objek array: String[] kota = new String[8]; int[] nomor = new int[7];
  • 32. Mengakses Elemen Array  Bentuk Deklarasi namaVariabelArray[nomorElemen];  Contoh: kota[0] = “Surabaya”;
  • 33. ArrayKota.java public class ArrayKota{ public static void main(String[] args){ String[] kota; //deklarasi variabel array kota = new String[3]; // membuat objek array // mengisi elemen array kota[0] = "Jakarta"; kota[1] = "Surabaya"; kota[2] = "Semarang"; // menampilkan elemen array System.out.println(kota[0]); System.out.println(kota[1]); System.out.println(kota[2]); } }
  • 34. Pemberian Nilai Array public class ArrayKota2{ public static void main(String[] args){ String[] kota = {“Jakarta”, “Surabaya”, “Semarang”}; // menampilkan elemen array System out println(kota[0]); System.out.println(kota[1]); System.out.println(kota[2]); } } Pemberian nilai dapat langsung dilakukan ketika objek array diciptakan
  • 35. Mengetahui Jumlah Elemen Array public class ArrayKota3{ public static void main(String[] args){ String[] kota = {“Jakarta”, “Surabaya”, “Semarang”}; // menampilkan elemen array for(int i=0; i<kota.length; i++) System.out.println(kota[i]); } } Jumlah elemen Array dapat diketahui dengan instance variable bernama length
  • 36. Array Multidimensi class ArrayMultidimensi { public static void main(String[] args) { String[][] nama = { {"Pak ", "Bu “, “Mbak”}, {"Joko", "Susi"} }; System.out.println(nama[0][0] + nama[1][0]); System.out.println(nama[0][1] + nama[1][1]); System.out.println(nama[0][2] + nama[1][0]); } } Array multidimensi adalah array dari array , dengan konsep pengaksesan [noBaris][noKolom]
  • 37. Latihan: Buat Array Multidimensi 1. Buat class NegaraKota 2. Buat array multidimensi untuk nama negara dan ibukotanya 3. Masukkan dalam list array: nama negara = Amerika, Inggris, Jepang, Perancis, Indonesia, Iran, Irak ibukota =Teheran, Bekasi, Jakarta, Bantar Gebang, Tokyo 4. Akses array dan tampilkan di layar sebagai berikut: Ibukota Indonesia adalah Jakarta Ibukota Jepang adalah Tokyo Ibukota Iran adalah Teheran
  • 39. Operator  Operator adalah simbol dan karakter khusus (matematika) yang digunakan dalam suatu ekspresi  Contoh:  int x = 3;  int y = x;  int z = x * y;  boolean status = true;
  • 40.
  • 41. Jenis Operator Berdasar Operand 1. Operator Unary: operator yang melibatkan satu operand 2. Operator Binary: operator yang melibatkan dua operand 3. Operator Ternary: operator yang melibatkan tiga operand
  • 42. Jenis Operator 1. Operator Aritmatika 2. Operator Penugasan 3. Operator Penggabungan 4. Operator Penambahan dan Pengurangan 5. Operator Bit 6. Operator Pembanding 7. Operator Logika
  • 43. Operator Aritmatika  Hasil operasi matematika akan mengikuti tipe data operand  Operand bertipe int akan menghasilkan int Operator Meaning Example + Addition 3 + 4 - Subtraction 5 - 7 * Multiplication 5 * 5 / Division 14 / 7 % Modulus 20 % 7
  • 44. Operator Penugasan  Operator penugasan berguna untuk memberi nilai ke suatu variabel  Operator penugasan menggunakan tanda sama dengan ( = )  Operator penugasan digabungkan dengan operator aritmatika membentuk operator penugasan gabungan (compound assignment)
  • 45. Operator Penugasan Gabungan Expression Meaning x += y x = x + y x -= y x = x - y x *= y x = x * y x /= y x = x / y
  • 46. Operator Penggabungan  Operator + dapat digunakan untuk penggabungan String dan String maupun String dan Bilangan  Contoh: System.out.println(“Saya adalah” + “Mahasiswa”); System.out.println(“Jumlah Mahasiswa” + 30);
  • 47. Penambahan dan Pengurangan  Penambahan: menambahkan 1 ke nilai variabel (operator = ++, prefix atau postfix) int x=5; int x=5; y = x++; y = ++x; (nilai saat ini : y = 5, x=6) (nilai saat ini: y = 6, x=6)  Pengurangan: mengurangkan 1 ke nilai variabel (operator = --) int x=5; int x=5; y = x--; y = --x; (nilai saat ini: y = 5, x=4) (nilai saat ini: y = 4, x=4)
  • 48. Latihan: Tampilkan Nilai x, y dan z Penambahan.java int x, y, z; x = 42; y = x++; //tampilkan x, y saat ini z = ++x; //tampilkan x, z saat ini Pengurangan.java int x, y, z; x = 42; y = x--; //tampilkan x, y saat ini z = --x; //tampilkan x, z saat ini
  • 49. Latihan: Tampilkan Nilai x, y,w dan z Penambahan2.java int w, x, y, z; x = 5; w =5 ; y = 8 - x++; z = 8 - ++w; Pengurangan2.java int w,x, y, z; x = 5; w =5 ; y = 8 – x--; z = 8 - --w;
  • 50. Operator Bit & operasi AND untuk bit | operasi OR untuk bit ^ operasi Ex OR untuk bit ~ operasi NOT untuk bit << geser kiri (geser 1 bit = *2) >> geser kanan (geser 1 bit = /2) >>> geser kanan tak bertanda
  • 51. Latihan: Program Kali dan Bagi 2  Buat program yang menghitung perkalian (*) dan pembagian (/) dengan bilangan dua (2) tanpa operator matematika  Catatan = x >> n = x/2n
  • 52. Operator Pembanding (Relasional) Operator Meaning Example == Equal x == 3 != Not equal x != 3 < Less than x < 3 > Greater than x > 3 <= Less than or equal to x <= 3 >= Greater than or equal to x >= 3 Operator pembanding menggunakan ekspresi dengan nilai balik boolean (true or false)
  • 53. Latihan: Tampilkan hasilBanding1 dan 2 Pembanding.java int age = 36; boolean hasilBanding1 = age < 25; boolean hasilBanding2 = age != 26; //Tampilkan hasilBanding1 dan hasilBanding2
  • 54. Operator Logika && operasi logika AND | | operasi logika OR ! operasi logika NOT Operator logika menggunakan ekspresi dengan nilai balik Boolean (true or false)
  • 55. Urutan Eksekusi Operator  Secara umum urutan eksekusi operator: 1. Operasi Penambahan dan Pengurangan 2. Operasi Aritmatika 3. Operasi Pembandingan 4. Operasi Logika 5. Operasi Penugasan  Apabila urutan sama, sebelah kiri dieksekusi terlebih dahulu daripada sebelah kanan  Khusus untuk operator = dan += sebelah kanan dieksekusi terlebih dahulu
  • 57. Stream Standard 1. System.in: menangani pembacaan dari keyboard (standard input) 2. System.out: mengirimkan keluaran ke layar (standard output) 3. System.err: mengirimkan kesalahan (standard error)
  • 58. Membaca Input dari Keyboard Menggunakan class Scanner (java.util.Scanner) dengan method sebagai berikut: 1. nextInt(): untuk menerima tipe data integer 2. nextShort(): untuk menerima tipe data short 3. nextLong(): untuk menerima tipe data long 4. nextDouble(): untuk menerima tipe data double 5. nextFloat(): untuk menerima tipe data float 6. nextLine(): untuk menerima tipe data string 7. nextBoolean(): untuk menerima tipa data boolean
  • 59. SalamKenal.java import java.util.Scanner; public class SalamKenal { public static void main( String[] args ){ Scanner masukan = new Scanner(System.in); System.out.print("Masukkan Nama Anda: "); String nama = masukan.nextLine(); System.out.println("Halo, Salam Kenal sdr " + nama +"!"); } }
  • 60. Perkalian.java public class Perkalian{ public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.print("Masukkan bilangan pertama: "); int bilangan1 = input.nextInt(); System.out.print("Masukkan bilangan kedua: "); int bilangan2 = input.nextInt(); System.out.print("Hasil perkalian: " + (bilangan1 * bilangan2)); } }
  • 61. Latihan Ubah class LuasSegitiga dengan nilai alas dan tinggi dimasukkan oleh user lewat prompt (gunakan class Scanner) public class LuasSegitiga { public static void main(String[] args) { double alas= 17; double tinggi = 11; double luas = (alas*tinggi)/2; System.out.println("Luas Segitiga : " + luas); } }
  • 62. Tampilan Program Program Penghitung Luas Segitiga Masukkan Alas = 13 Masukkan Tinggi = 24 Jadi, Luas Segitiga adalah =
  • 63. Argument untuk Menerima Input public class LuasSegitigaArgs { public static void main(String[] args) { double alas= Double.parseDouble(args[0]); double tinggi = Double.parseDouble(args[1]); double luas = (alas*tinggi)/2; System.out.println("Luas Segitiga : " + luas); } }
  • 64. Tampilan Program %java LuasSegitigaArgs 2 18 Luas Segitiga: 18
  • 65. Argument untuk Menerima Input (Rev) public class LuasSegitigaArgs { public static void main(String[] args) { if (args.length == 2){ double alas = Double.parseDouble(args[0]); double tinggi = Double.parseDouble(args[1]); double luas = (alas*tinggi)/2; System.out.println("Luas Segitiga : " + luas); }else{ System.out.println("Penggunaan Argument Salah!"); System.out.println("Contoh: java LuasSegitigaArgs 30 20"); } } }
  • 66. Tampilan Program %java LuasSegitigaArgs 2 18 67 Penggunaan Argument Salah! Contoh: java LuasSegitigaArgs 30 20
  • 68. Konversi String ke Bilangan String myString; double myDbl = Double.parseDouble(myString); Integer.parseInt(myString); Float.parseFloat(myString);
  • 69. Argument untuk Menerima Input public class LuasSegitigaArgs { public static void main(String[] args) { double alas= Double.parseDouble(args[0]); double tinggi = Double.parseDouble(args[1]); double luas = (alas*tinggi)/2; System.out.println("Luas Segitiga : " + luas); } }
  • 70. Konversi Bilangan ke String double myDouble; int myInteger; float myFloat; Double.toString(myDouble); Integer.toString(myInteger); Float.toString(myFloat);
  • 72. Metode Pengaturan Format 1. Menggunakan Method System.out.format() 2. Menggunakan DecimalFormat Class
  • 73. 1. Method System.out.format() public class TestFormat { public static void main(String[] args) { long n = 461012; System.out.format("%d%n", n); System.out.format("%08d%n", n); System.out.format("%+8d%n", n); System.out.format("%,8d%n", n); System.out.format("%+,8d%n%n ", n); Calendar c = Calendar.getInstance(); System.out.format("%tB %te, %tY%n", c, c, c); System.out.format("%tl:%tM %tp%n", c, c, c); System.out.format("%tD%n", c); } }
  • 75. Converters and Flags Conver ter Flag Explanation d A decimal integer. f A float. n A new line character appropriate to the platform running the application. You should always use %n, rather than n. tB A date & time conversion—locale-specific full name of month. td, te A date & time conversion—2-digit day of month. td has leading zeroes as needed, te does not. ty, tY A date & time conversion—ty = 2-digit year, tY = 4-digit year. tl A date & time conversion—hour in 12-hour clock. tM A date & time conversion—minutes in 2 digits, with leading zeroes as necessary. tp A date & time conversion—locale-specific am/pm (lower case). tm A date & time conversion—months in 2 digits, with leading zeroes as necessary. tD A date & time conversion—date as %tm%td%ty 08 Eight characters in width, with leading zeroes as necessary. + Includes sign, whether positive or negative. , Includes locale-specific grouping characters.
  • 76. 2. DecimalFormat Class public class DecimalFormatDemo { static public void customFormat(String pattern, double value ) { DecimalFormat myFormatter = new DecimalFormat(pattern); String output = myFormatter.format(value); System.out.println(value + " " + pattern + " " + output); } static public void main(String[] args) { customFormat("###,###.###", 123456.789); customFormat("###.##", 123456.789); customFormat("000000.000", 123.78); customFormat("$###,###.###", 12345.67); } }
  • 77. Hasil Eksekusi 123456.789 ###,###.### 123,456.789 123456.789 ###.## 123456.79 123.78 000000.000 000123.780 12345.67 $###,###.### $12,345.67
  • 78. DecimalFormat Class Value Pattern Output Explanation 123456.789 ###,###.### 123,456.789 The pound sign (#) denotes a digit, the comma is a placeholder for the grouping separator, and the period is a placeholder for the decimal separator. 123456.789 ###.## 123456.79 The value has three digits to the right of the decimal point, but the pattern has only two. The format method handles this by rounding up. 123.78 000000.000 000123.780 The pattern specifies leading and trailing zeros, because the 0 character is used instead of the pound sign (#). The first character in the pattern is the dollar sign ($). Note that it
  • 80. Pernyataan Penentu Keputusan 1. if, if-else, if-else if – else 2. switch
  • 81. if  Pernyataan kondisi yang digunakan untuk pengambilan keputusan terhadap dua buah kemungkinan  if bisa berdiri sendiri atau dengan menggunakan else  Bentuk: if(kondisi){ // blok pernyataan yang dijalankan, bila kondisi benar }
  • 82. PernyataanIF.java public class PernyataanIF{ public static void main(String[] args){ int diskon =0, totalBelanja = 500000; if(totalBelanja >= 100000){ diskon = totalBelanja/10; } System.out.println("Diskon = " + diskon); } }
  • 83. if-else  if-else mengatur pernyataan yang dijalankan sewaktu kondisi bernilai benar atau salah  Bentuk: if(kondisi){ // blok pernyataan yang dijalankan, bila kondisi benar } else{ // blok pernyataan yang dijalankan, bila kondisi salah }
  • 84. PernyataanIFELSE.java public class PernyataanIFELSE{ public static void main(String[] args){ int diskon =0, totalBelanja = 500000; if(totalBelanja >= 100000){ diskon = totalBelanja/10; } else{ diskon = 0; } System.out.println("Diskon = " + diskon); } }
  • 85. Latihan Kembangkan class PernyataanIFELSE supaya nilai Total Belanja bisa dimasukan melalui input dari keyboard (gunakan class Scanner)
  • 86. if-else if-else  Mengatur pernyataan yang dijalankan sewaktu kondisi berupa pilihan  Bentuk: if(kondisiA){ // pernyataan yang dijalankan, bila kondisiA benar }else if(kondisiB){ // pernyataan yang dijalankan, bila kondisiB benar }else if(kondisiC){ // pernyataan yang dijalankan, bila kondisiC benar }else{ // pernyataan yang dijalankan untuk kondisi selain itu }
  • 87. PernyataanIFELSEIF.java public class PernyataanIFELSEIF{ public static void main(String[] args) { int skorUjian= 86; char nilai; if (skorUjian >= 90) { nilai = 'A'; } else if (skorUjian >= 80) { nilai = 'B'; } else if (skorUjian >= 70) { nilai = 'C'; } else { nilai = 'D'; } System.out.println("Nilai = " + nilai); } }
  • 88. Latihan Kembangkan class PernyataanIFELSEIF supaya bisa menerima masukan (input) data langsung dari user Tampilan Program: Masukkan Skor Ujian = X Nilai untuk skor ujian X adalah Z
  • 89. Operator Ternary (Kondisi)  Pernyataan kondisi yang menggunakan operator ternary (melibatkan tiga buah operand)  Bentuk: ekspresi_kondisi ? nilai_1 : nilai_2
  • 90. OperatorTernary.java public class OperatorTernary{ public static void main(String[] args){ int totalBelanja = 500000; int diskon = totalBelanja >= 100000 ?totalBelanja/10 : 0; System.out.println("Diskon = " + diskon); } }
  • 91. switch  Switch digunakan untuk melakukan tindakan berbeda terhadap sejumlah kemungkinan nilai  Bentuk: switch(ekspresi){ case nilaiSatu: Pernyataan 1 break; case nilaiDua: Pernyataan2 break; ... default: PernyataanN; }
  • 92. PernyataanSWITCH1.java public class PernyataanSWITCH1{ public static void main(String[] args){ int pilihan = 3; switch(pilihan){ case 1: System.out.println("Soto Ayam"); break; case 2: System.out.println("Gule Kambing"); break; case 3: System.out.println("Nasi Goreng"); break; default: System.out.println("Silakan Pilih 1, 2 atau 3"); } }
  • 93. Latihan  Kembangkan class PernyataanSWITCH1 supaya bisa menerima masukan (input) data langsung dari user lewat prompt  Tampilan awal: > 1. Soto Ayam 2. Gule Kambing 3. Nasi Goreng > Pilih menu apa? 1 > Menu yang anda pilih adalah Soto Ayam
  • 94. PernyataanSWITCH2.java public class PernyataanSWITCH2{ public static void main(String[] args){ int pilihan = 3; switch(pilihan){ case 1: case 2: case 3: case 4: case 5: System.out.println("Hari Kerja"); break; case 6: case 7: System.out.println("Hari Libur"); break; default: System.out.println("Silakan Pilih Hari"); }}}
  • 95. Latihan: Menentukan Jumlah Hari  Buat program (dengan SWITCH) untuk menghitung berapa jumlah hari pada suatu bulan dan tahun yang ditunjuk  Bulan dan tahun dimasukkan dengan input dari keyboard (class Scanner)  Tampilkan hasilnya dengan: Masukkan tahun: 1900 Masukan bulan: 2 Jumlah hari pada tahun 1900 bulan 2 adalah 28 hari
  • 96.
  • 98. Pernyataan Pengulangan Proses 1. for 2. while 3. do-while
  • 99. for  for sering disebut for loop, karena digunakan untuk proses looping atau pengulangan  Bentuk: for (inisialisasi; kondisi; penaikan_penurunan){ pernyataan }
  • 100. PernyataanFOR.java public class PernyataanFOR { public static void main(String[] args){ for(int i=1; i<11; i++){ System.out.println(i); } } }
  • 101. PernyataanFOREnhanced.java class PernyataanFOREnhanced { public static void main(String[] args){ int[] numbers = {1,2,3,4,5,6,7,8,9,10}; for (int i : numbers) { System.out.println(i); } } }
  • 102. while  while digunakan untuk melakukan proses pengulangan suatu blok pernyataan selama kondisinya bernilai true  Bentuk: while (kondisi) { pernyataan }
  • 103. PernyataanWHILE.java class PernyataanWHILE { public static void main(String[] args){ int i = 1; while (i < 11) { System.out.println(i); i++; } } }
  • 104. Latihan: Tampilkan Bilangan Genap Tampilkan bilangan genap antara 1 sampai 20 dengan menggunakan: 1. Pernyataan FOR 2. Pernyataan WHILE
  • 105. do...while  do ... while digunakan untuk melakukan proses pengulangan suatu blok pernyataan selama kondisinya bernilai true  Pernyataan dalam blok paling tidak dieksekusi satu kali  Bentuk: do { pernyataan } while (kondisi);
  • 106. PernyataanDOWHILE.java class PernyataanDOWHILE { public static void main(String[] args){ int i = 1; do { System.out.println(i); i++; } while (i <= 10); } }
  • 108. Pernyataan Pemindah Proses 1. return 2. break 3. continue
  • 109. return  Digunakan untuk keluar dari method  return memiliki dua bentuk: 1. mengembalikan nilai (sesuai dengan tipe data) 2. tidak mengembalikan nilai (untuk void)  Contoh: int perkalian(int x, int y){ return x * y; } void perkalian(int x, int y){ hasilKali = x * y; return; }
  • 110. break  Penyataan break digunakan untuk keluar dari suatu pengulangan (loop)  Penggunaan break bisa berbentuk tanpa label atau berlabel
  • 111. PernyataanBREAK.java public class PernyataanBREAK { public static void main(String[] args){ for(int i=1; i<11; i++){ if(i==5) break; System.out.println(i); } } }
  • 112. PernyataanBREAKLABEL.java public class PernyataanBREAK { public static void main(String[] args){ selesai: for(int i=1; i<11; i++){ if(i==5) break selesai; System.out.println(i); } } }
  • 113. continue  Digunakan untuk melanjutkan eksekusi ke suatu pengulangan (loop)  Bisa berbentuk tanpa label atau berlabel  Bentuk code persis sama dengan break, baik untuk yang tanpa label atau berlabel
  • 114. Latihan: Modifikasi Matematika.java  Modifikasi program Matematika.java yang sebelumnya sudah kita buat dengan menggunakan tipe data double untuk method  Input data adalah lewat prompt (class Scanner)  Buat menu pilihan untuk fitur pertambahan, pengurangan, pembagian atau perkalian  Gunakan pengulangan untuk menu pilihan. Akan berhenti apabila kita pilih 0
  • 115. Tampilan Menu Aplikasi Matematika: 1. Pertambahan 2. Pengurangan 3. Perkalian 4. Pembagian 0. Keluar Aplikasi Pilih Menu = 1 Masukkan Angka Pertama = 3 Masukkan Angka Kedua =23 Hasil Pertambahan antara 3 dan 23 adalah 26 Menu Aplikasi Matematika: 1. Pertambahan 2. Pengurangan 3. Perkalian 4. Pembagian 0. Keluar Aplikasi Pilih Menu =
  • 116. Latihan: Aplikasi Restoran 1. Buat sistem manajemen restoran berbasis text 2. Harga semua masakan adalah Rp. 15.000 3. Sistem akan melakukan pengulangan tampilan Pilih Menu, sampai dipilih menu 5 (Hitung Total) atau menu 6 (Keluar Aplikasi)) 4. Sistem akan melakukan pengulangan tampilan Menu Restoran, sampai dipilih menu 6 (Keluar Aplikasi))
  • 117. Tampilan Sistem Menu Restoran: 1. Nasi Goreng 2. Nasi Rawon 3. Nasi Gudeg 4. Jus Jeruk 5. Hitung Total 6. Keluar Aplikasi Pilih Menu? 1 Pilih Menu? 4 (mengulang ke tampilan Pilih Menu, sampai dipilih menu 5 (Hitung Total) atau menu 6 (Keluar Aplikasi)) Pilih Menu? 5 Pilihan menu adalah Nasi Goreng dan Jus Jeruk. Total yang harus dibayar adalah Rp. 30.000 (mengulang ke tampilan Menu Restoran, sampai dipilih menu 6 (Keluar Aplikasi))
  • 118. Referensi -1-  Sharon Zakhour et al, The Java Tutorial Fourth Edition, http://java.sun.com/docs/books/tutorial  Deitel & Deitel, Java How to Program 7th Edition, Prentice Hall, 2007  Deitel & Deitel, Java for Programmers, Prentice Hall, 2009  Kathy Sierra & Bert Bates, Head First Java 2nd Edition, O’Reilly, 2005  Rogers Cadenhead & Laura Lemay, Teach Yourself Java 6 in 21 Days, Sams Publishing, 2007  Robert Lafore, Data Structures and Algorithms in Java Second Edition, Sams Publishing, 2003
  • 119. Referensi -2-  Tim Pengembang JENI, JENI 1-6, Depdiknas, 2007  Indrajani dan Martin, Pemrograman Berbasis Objek dengan Java, Elex Media Komputindo, 2007  LN Harnaningrum, Algoritma dan Pemrograman Java, Graha Ilmu, 2009  Rachmad Hakim & Sutarto, Mastering Java, Elex Media Komputindo, 2009  Miftakhul Huda dan Bunafit Komputer, Membuat Aplikasi Database dengan Java, MySQL, dan Netbeans, Elex Media Komputindo, 2010