Modul 2 Dasar Pemrograman
Modul 2 Dasar Pemrograman
Pertemuan II
DASAR PEMROGRAMAN
page 1 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Catatan : true, false, dan null bukan termasuk kata kunci, tetapi termasuk kata-kata
khusus, jadi kita tidak dapat menggunakannya sebagai nama identifier.
Contoh :
• Penulisan decimal : 9, 15, 28
• Penulisan hexadecimal : 0xA, 0X1F, 0XD4
• Penulisan octal : 06, 014, 027
page 2 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Untuk menggunakan character literals, karakter tersebut di dalam tanda single pute
(' ') (single quote delimiters). Sebagai contoh huruf a, diwakili sebagai ‘a’.
Untuk menggunakan karakter khusus seperti karakter baris baru, backslash
digunakan backslash (\) diikuti dengan karakter kode. Sebagai contoh, ‘\n’ untuk karakter
baris baru atau ganti baris, ‘\r’ untuk menyatakan nilai balik (carriage return), ‘\b’ untuk
backspace.
Representasi Deskripsi
\\ Backslah
\ Continuation
\b Backspace
\r Carriage return
\f Form feed
\t Horizontal tab
\n Newline
\’ Single quote
\” Double quote
\ddd Octal character (\000 sampai \377)
\udddd Unicode character (\u0000 sampai \uFFFF)
LiteralChar.java
import javax.swing.*;
page 3 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
System.out.println(“Program Java”);
Blok adalah satu atau lebih pernyataan yang terbentang antara kurung kurawal “{“
buka dan kurung kurawal tutup “}” yaitu sekumpulan pernyataan sebagai satu unit
kesatuan. Blok pernyataan dapat dikumpulkan akan tetapi tidak secara pasti mempunyai
keterkaitan fungsi. Beberapa jumlah spasi kosong diijinkan terdapat di dalamnya, sebagai
contoh dari suatu blok adalah :
2.5. Komentar
Komentar adalah catatan yang ditulis pada kode dengan tujuan sebagai bahan
dokumentasi. Teks tersebut bukan bagian dari program dan tidak mempengaruhi jalannya
program. Java mendukung tiga jenis komentar, yaitu C++ style komentar satu baris, C
style beberapa baris, dan komentar java doc khusus.
/* this is an example of a
C style or multiline comments */
/**
This is an example of special java doc comments used for \n
generating an html documentation. It uses tags like:
@author Florence Balagtas
@version 1.2
*/
page 4 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
‘a’ //huruf a
‘\t’ //tab
Untuk menampilkan karakter khusus seperti ' (single quotes) atau " (double quotes),
menggunakan karakter escape “\”. Sebagai contoh :
String bukan merupakan tipe data primitive, tetapi merupakan suatu Class. Kita
akan memperkenalkan mengenai string pada bagian ini. String mewakili tipe data yang
terdiri atas beberapa karakter. String memiliki literal yang terdapat di antara tanda double
quotes (“ ”), sebagai contoh :
2 //nilai desimal 2
077 //angka 0 pada awal pernyataan mengindikasikan nilai oktal
0xBACC //karakter 0x mengindikasikan nilai heksadesimal
Tipe-tipe integral memiliki default tipe data yaitu int. Anda dapat merubahnya ke
bentuk long dengan menambahkan huruf l atau L. Tipe data integral memiliki range
sebagai berikut :
page 5 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Contohnya adalah :
Pada contoh yang ditunjukkan diatas, 23 setelah E pada contoh kedua bernilai
positif. Contoh tersebut sama dengan 6.02E+23. Tipe data Floating-point memiliki
jangkauan sebagai berikut :
Struktur
Tipe Ukuran
Sign Exponent Mantissa
float 32 bit 1 bit 8 bit 23 bit
double 64 bit 1 bit 11 bit 52 bit
page 6 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
2.7. Variabel
Variabel adalah unit dasar penyimpanan di program java. Variabel memiliki tipe
data dan nama. Tipe data menandakan tipe nilai yang dapat dibentuk oleh variabel itu
sendiri. Nama variabel harus mengikuti aturan untuk identifier.
Catatan : Nilai yang berada diantara <> adalah nilai yang disyaratkan, sementara
nilai dalam tanda [] bersifat optional.
VariableSamples.java
public class VariableSamples {
public static void main( String[] args ){
// deklarasi tipe data dengan nama variable result
// dengan tipe data boolean
boolean result;
double exam=0;
double quiz=10;
double grade = 0;
page 7 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
System.out.println()
System.out.print()
OutputVariable.java
public class OutputVariable {
public static void main( String[] args ){
int nilai = 10;
char x;
x = ‘A’;
System.out.println( nilai );
System.out.println(“nilai dari x = ” + x );
}
}
10
nilai dari x = A
System.out.print("Hello ");
System.out.print("world!");
Hello world!
System.out.println("Hello ");
System.out.println("world!");
Hello
world!
page 8 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Variabel primitif adalah variabel dengan tipe data primitif. Mereka menyimpan data
dalam lokasi memori yang sebenarnya dimana variabel tersebut berada.
Variabel reference adalah variabel yang menyimpan alamat lokasi dalam memori.
Yang menunjuk ke lokasi memori dimana data sebenarnya berada. Ketika kita
mendeklarasikan variabel pada class tertentu, kita sebenarnya mendeklarasikan reference
variable dalam bentuk objek dalam class-nya tersebut.
Sebagai contoh, Apabila kita mempunyai dua variabel dengan tipe data int dan
String.
Dimisalkan ilustrasi yang ditunjukkan dibawah ini adalah memori yang ada pada
komputer Anda, dimana Anda memiliki alamat dari setiap sel memorinya, nama variabel
dan datanya terbentuk sebagai berikut.
Seperti yang dapat kita lihat, untuk variable primitif num, datanya berada dalam
lokasi dimana variabel berada. Untuk reference variable name, variabel hanya menunjuk
alamat dimana data tersebut benar-benar ada.
2.8. Konstanta
Untuk menunjukkan konstanta, di java menggunakan kata kunci (keyword) final.
Konstanta adalah suatu variable yang didefinisikan dan diberi nilai sekali saja dan tidak
dapat diubah.
Konstanta.java
public class Konstanta {
public static void main (String args[]) {
final double PHI = 3.14;
double radius = 10;
page 9 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
2.9. Operator
Dalam Java, ada beberapa tipe operator. Ada operator aritmatika, operator relasi,
operator logika, dan operator kondisi. Operator ini mengikuti bermacam-macam prioritas
yang pasti sehingga compilernya akan tahu yang mana operator untuk dijalankan lebih
dulu ketika beberapa operator dipakai bersama-sama dalam satu pernyataan.
AritmatikaDemo.java
public class AritmatikaDemo {
public static void main(String[] args) {
//deklarasi dan inisialisasi variabel
int i = 37;
int j = 42;
double x = 27.475;
double y = 7.22;
page 10 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Catatan :
Ketika integer dan floating-point number digunakan sebagai operand untuk
operasi aritmatika tunggal, hasilnya berupa floating point. Integer adalah
converter secara implisit ke bentuk angka floating-point sebelum operasi
berperan mengambil tempat.
count++;
page 11 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
page 12 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
RelasiDemo.java
public class RelasiDemo {
public static void main(String[] args) {
//beberapa nilai
int i = 37;
int j = 42;
int k = 42;
System.out.println("Nilai variabel...");
System.out.println(" i = " + i);
System.out.println(" j = " + j);
System.out.println(" k = " + k);
//lebih besar dari
System.out.println("Lebih besar dari...");
System.out.println(" i > j = " + (i > j)); //false
System.out.println(" j > i = " + (j > i)); //true
System.out.println(" k > j = " + (k > j)); //false
//lebih besar atau sama dengan
System.out.println("Lebih besar dari atau sama dengan...");
System.out.println(" i >= j = " + (i >= j)); //false
System.out.println(" j >= i = " + (j >= i)); //true
System.out.println(" k >= j = " + (k >= j)); //true
//lebih kecil dari
System.out.println("Lebih kecil dari...");
System.out.println(" i < j = " + (i < j)); //true
System.out.println(" j < i = " + (j < i)); //false
System.out.println(" k < j = " + (k < j)); //false
//lebih kecil atau sama dengan
System.out.println("Lebih kecil dari atau sama dengan...");
System.out.println(" i <= j = " + (i <= j)); //true
System.out.println(" j <= i = " + (j <= i)); //false
System.out.println(" k <= j = " + (k <= j)); //true
//sama dengan
System.out.println("Sama dengan...");
System.out.println(" i == j = " + (i == j)); //false
System.out.println(" k == j = " + (k == j)); //true
//tidak sama dengan
System.out.println("Tidak sama dengan...");
System.out.println(" i != j = " + (i != j)); //true
System.out.println(" k != j = " + (k != j)); //false
}
}
Nilai variabel...
i = 37
j = 42
k = 42
Lebih besar dari...
i > j = false
j > i = true
k > j = false
Lebih besar dari atau sama dengan...
i >= j = false
j >= i = true
k >= j = true
page 13 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
x1 op x2
Dimana x1, x2 dapat menjadi pernyataan boolean. Variabel atau konstanta, dan op
adalah salah satu dari operator &&, &, ||, | atau ^. Tabel kebenaran yang akan
ditunjukkan selanjutnya, merupakan kesimpulan dari hasil dari setiap operasi untuk
semua kombinasi yang mungkin dari x1 dan x2.
x1 x2 Hasil
True True True
True False False
False True False
False False False
Perbedaan dasar antara operator && dan & adalah bahwa && mensupports short-
circuit evaluations (atau evaluasi perbagian), sementara operator & tidak. Apa arti dari
pernyataan tersebut? Diberikan suatu pernyataan:
&& akan mengevaluasi pernyataan exp1, dan segera mengembalikan nilai false dan
menyatakan bahwa exp1 bernilai false. Jika exp1 bernilai false, operator tidak akan
pernah mengevaluasi exp2 karena hasil operasi operator akan menjadi false tanpa
memperhatikan nilai dari exp2. Sebaliknya, operator & selalu mengevaluasi kedua nilai
dari exp1 dan exp2 sebelum mengembalikan suatu nilai jawaban.
page 14 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Berikut ini adalah suatu contoh source code yang menggunakan logika dan boolean
AND :
TestAND.java
public class TestAND {
public static void main( String[] args ){
int i = 0;
int j = 10;
boolean test= false;
//demonstrasi &&
test = (i > 10) && (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
//demonstrasi &
test = (i > 10) & (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
}
}
0
10
false
0
11
False
Catatan :
bahwa j++ pada baris yang mengandung operator && tidak dievaluasi jika
pernyataan pertama (i>10) telah bernilai sama dengan false.
x1 x2 Hasil
True True True
True False True
False True True
False False False
exp1 || exp2
page 15 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
|| akan mengevaluasi pernyataan exp1, dan segera mengembalikan nilai true dan
menyatakan bahwa exp1 bernilai true. Jika exp1 bernilai true, operator tidak akan pernah
mengevaluasi exp2 karena hasil dari operasi operator akan bernilai true tanpa
memperhatikan nilai dari exp2. Sebaliknya, operator | selalu mengevaluasi kedua nilai
dari exp1 and exp2 sebelum mengembalikan suatu jawaban suatu nilai.
Berikut ini sebuah contoh source code yang menggunakan operator logika dan
boolean OR :
TestOR.java
public class TestOR {
public static void main( String[] args ){
int i = 0;
int j = 10;
boolean test= false;
//demonstrasi ||
test = (i < 10) || (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
//demonstrasi |
test = (i < 10) | (j++ > 9);
System.out.println(i);
System.out.println(j);
System.out.println(test);
}
}
0
10
true
0
11
True
Catatan : bahwa j++ pada baris yang terdiri atas operator || tidak dievaluasi
jika pernyataan pertama (i<10) telah bernilai sama dengan true.
x1 x2 Hasil
True True False
True False True
False True True
False False False
page 16 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Hasil operasi operator exclusive OR adalah TRUE, jika dan hanya jika satu operand
bernilai TRUE dan yang lain bernilai False. Catatan jika kedua operand harus selalu
dievaluasi untuk menjumlahkan hasil dari suatu exclusive OR.
Berikut ini adalah contoh source code yang menggunakan operator logika exclusive
OR :
TestXOR.java
public class TestXOR {
public static void main( String[] args ){
boolean val1 = true;
boolean val2 = true;
System.out.println(val1 ^ val2);
val1 = false;
val2 = true;
System.out.println(val1 ^ val2);
val1 = false;
val2 = false;
System.out.println(val1 ^ val2);
val1 = true;
val2 = false;
System.out.println(val1 ^ val2);
}
}
false
true
false
true
x1 Hasil
True False
False True
Berikut ini adalah contoh source code menggunakan operator logika NOT :
TestNOT.java
public class TestNOT {
public static void main( String[] args ){
boolean val1 = true;
boolean val2 = false;
System.out.println(!val1);
System.out.println(!val2);
}
}
page 17 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
false
true
exp1?exp2:exp3
Dimana nilai exp1 adalah suatu pernyataan boolean yang memiliki hasil yang salah
satunya harus berupa nilai true atau false. Jika exp1 bernilai true, exp2 merupakan hasil
operasi. Jika bernilai false, kemudian exp3 merupakan hasil operasinya. Sebagai contoh,
diberikan code sebagai berikut :
ConditionalOperator.java
public class ConditionalOperator {
public static void main( String[] args ){
String status = "";
int grade = 80;
//mendapatkan status pelajar
status = (grade >= 60)?"Passed":"Fail";
//print status
System.out.println( status );
}
}
Passed
page 18 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
ConditionalOperator2.java
class ConditionalOperator2 {
public static void main( String[] args ){
int score = 0;
char answer = 'a';
score = (answer == 'a') ? 10 : 0;
System.out.println("Score = " + score );
}
}
Score = 10
6%2*5+4/2+88-10
((6%2)*5)+(4/2)+88-10;
Catatan :
Untuk menghindari kebingungan dalam evaluasi operasi matematika, buatlah
pernyataan sesederhana mungkin dan gunakan bantuan tanda kurung.
page 19 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
OperatorString.java
public class OperatorString {
public static void main(String[] args) {
String S1 = "Saya";
String S2 = "Belajar Java";
String S3 = "belajar java";
System.out.println(S1+" "+S2);
System.out.println(S2.substring(0,7));
System.out.println(S2.equals(S3));
System.out.println(S2.equalsIgnoreCase(S3));
}
}
Ketika kedua syarat diatas terpenuhi, maka konversi pelebaran ukuran akan
dilakukan secara otomatis. Tipe data int lebih besar dari pada tipe data byte, ketika kita
page 20 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
melakukan konversi dari data bertipe byte ke data bertipe int, kita tidak perlu melakukan
konversi secara ekplisit.
Konversi pelebaran akan dilakukan pada bilangan bulat dan bilangan floating-point
yang kompatibel antara satu dengan yang lain. Tipe data numerik tidak kompatibel
dengan char atau boolean. Tipe char dan boolean juga tidak saling kompatibel.
Java juga secara otomatis melakukan konversi tipe ketika menyimpan literal
bilangan bulat ke variabel bertipe byte, short, atau long.
2.10.2. Casting
Casting atau typecasting adalah proses konversi data dari tipe data tertentu ke tipe
data yang lain. Adakalanya kita perlu memaksa konversi dari tipe data tertentu ke tipe
data lain yang tidak kompatibel atau memiliki ukuran lebih kecil. Misalnya ketika fungsi
mengirim tipe berbeda dari tipe yang diperlukan untuk operasi, maka tindakan casting
diperlukan.
Tindakan casting dilakukan dengan menempatkan tipe data yang diharapkan di
dalam tanda kurung disebelah kiri nilai yang dikonversi.
Sintaks casting adalah :
(TipeTarget) Nilai
TipeTarget adalah tipe data yang diinginkan, sedangkan Nilai adalah nilai yang akan
dikonversi. Contoh penggunaannya dapat dilihat pada program dibawah ini :
ContohCasting.java
public class ContohCasting {
public static void main(String args[]){
int i1=17, i2=4;
System.out.println(d);
System.out.println((int) d);
}
}
4.25
4
Jika proses casting pada pengisian variabel d, yaitu “(double)” dihilangkan maka
keluarannya menjadi seperti :
4.0
4
page 21 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
dilakukan maka kompilator akan memotong 32 bit tipe data long menjadi 32 bit tipe data
int. Jika nilai 32 bit bagian atas berisi informasi penting, maka informasi itu akan hilang.
Informasi juga dapat hilang ketika kita melakukan casting antara tipe data yang
berbeda, walupun memiliki ukuran penyimpanan yang sama. Misalnya kita melakukan
casting bilangan double menjadi long, walaupun ukurannya sama 64 bit, hal ini akan
menghilangkan nilai pecahannya.
Konversi yang mengakibatkan pemotongan disebut truncation. Pada tabel 2.13
berikut ini adalah daftar proses casting yang tidak mengakibatkan pemotongan dan
hasilnya dijamin tidak ada yang hilang.
Alur konversi tipe-tipe data primitif dapat dilihat pada gambar 2.3 dibawah ini :
Enam anak panah tebal menunjukkan konversi yang tidak menghilangkan informasi.
Sedangkan tiga anak panah tipis menunjukkan konversi yang dapat menimbulkan
kehilangan presisi. Contoh bilangan int 123456789 mempunyai banyak digit yang dapat
direpresentasikan float, hasilnya mempunyai magnitudo yang benar namun
menghilangkan presisi.
CastingInt2Float.java
public class CastingInt2Float {
public static void main(String args[]){
int N_int = 123456789;
float N_float = N_int;
page 22 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
System.out.println(N_int);
System.out.println(N_float);
}
}
123456789
1.23456792E8
Terlihat bahwa digit ke-8 dan ke-9 nilainya berubah dari 89 menjadi 92. Hal ini
penting untuk diperhatikan dalam membuat program agar tidak terjadi kesalahan dalam
operasi.
PenjumlahanArgs.java
public class PenjumlahanArgs{
public static void main(String[] args){
int bilangan1 = Integer.parseInt(args[0]);
int bilangan2 = Integer.parseInt(args[1]);
Kemudian compile dengan perintah javac, jika tidak ada kesalahan, jalankan dengan
menggunakan perintah :
java PenjumlahanArgs 4 5
page 23 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
ScannerString.java
import java.util.Scanner;
ScannerInt.java
import java.util.Scanner;
GetInputKeyboardBufferedReader.java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
page 24 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
try{
nama = dataIn.readLine();
}
catch( IOException e ){
System.out.println("Ada kesalahan !");
}
System.out.println();
System.out.println("Hello " + nama +"\nLanjutkan belajarnya pasti
menjadi programmer Java !");
}
}
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.io.*
yang akan mengeluarkan semua class yang berada dalam paket, dan selanjutnya
kita dapat menggunakan class-class tersebut dalam program kita.
Dua statement selanjutnya :
page 25 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Variabel nama diinisialisasi sebagai String kosong "", Sebaiknya kita selalu
menginisialisasi sebuah variabel setelah kita mendeklarasikannya.
Baris berikutnya adalah untuk menampilkan teks untuk berinteraksi dengan
pengguna, yaitu untuk memerintahkan pengguna agar mengetikkan namanya.
Try {
nama = dataIn.readLine();
}
catch( IOException e ) {
System.out.println("Ada kesalahan !");
}
nama = dataIn.readLine();
maka digunakan blok try-catch agar kesalahan yang terjadi tidak menggangu
jalannya program. Kita akan membahas try-catch pada penanganan exception di bab
selanjutnya. Sekarang kita cukup mencatat bahwa kita perlu menambahkan kode ini
untuk menggunakan metode readLine() dari BufferedReader untuk mendapatkan
masukan pengguna dari keyboard.
Selanjutnya kembali ke pernyataan :
nama = dataIn.readLine();
System.out.println();
System.out.println("Hello " + nama +"\nLanjutkan belajarnya pasti
menjadi programmer Java !");
Baris pertama untuk membuat baris kosong, sehingga tulisan masukan dari
pengguna memiliki jarak dengan tampilan berikutnya (Hello…..).
page 26 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
GetInputKeyboardJOptionPane.java
import javax.swing.JOptionPane;
import javax.swing.JOptionPane;
import javax.swing.*;
page 27 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Baris selanjutnya adalah menampilkan sebuah dialog yang berisi sebuah pesan dan
tombol Ok :
JOptionPane.showMessageDialog(null, msg);
No Metode Deskripsi
1 static NumberFormat Mengirim obyek NumberFormat yang bertugas
getCurrencyInstance()
mengkonversi ke string yang menunjukkan mata
uang menggunakan konvensi lokal
2 static NumberFormat Mengirim obyek NumberFormat yang bertugas
getNumberInstance()
mengkonversi ke string yang menunjukkan angka
menggunakan konvensi lokal
3 static NumberFormat Mengirim obyek NumberFormat yang bertugas
getPercentInstance()
mengkonversi ke string yang menunjukkan
persentase menggunakan konvensi lokal
4 void Mengeset jumlah angka maksimum setelah koma
setMaximumFractionDigits
(int digits)
5 void Mengeset jumlah angka maksimum sebelum
setMaximumIntegerDigits(
int digits)
koma
6 void Mengeset jumlah angka minimum setelah koma
setMinimumFractionDigits
(int digits)
7 void Mengeset jumlah angka minimum sebelum koma
setMinimumFractionDigits
(int digits)
page 28 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
FormatAngka.java
import java.text.*;
NumberFormatter.setMaximumIntegerDigits(10);
CurrFormatter.setMaximumIntegerDigits(10);
PercentFormatter.setMaximumIntegerDigits(10);
NumberFormatter.setMinimumIntegerDigits(1);
CurrFormatter.setMinimumIntegerDigits(1);
PercentFormatter.setMinimumIntegerDigits(1);
NumberFormatter.setMaximumFractionDigits(5);
CurrFormatter.setMaximumFractionDigits(2);
PercentFormatter.setMaximumFractionDigits(4);
NumberFormatter.setMinimumFractionDigits(2);
CurrFormatter.setMinimumFractionDigits(2);
PercentFormatter.setMinimumFractionDigits(6);
page 29 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Kita dapat memperoleh format angka yang cocok untuk lokal-lokal berbeda.
Misalnya kita ingin membuat format sesuai lokal jerman, maka kita dapat memanggil
metode :
• getNumberInstance(Locale.GERMANY)
• getCurrencyInstance(Locale.GERMANY)
• getPercentInstance(Locale.GERMANY)
Karena metode Locale berada di paket java.util, maka harus meng-import java.util.*
untuk dapat menggunakannya. Contoh penggunaan di program dapat dilihat pada
program dibawah ini :
FormatAngkaLokal.java
import java.text.*;
import java.util.*;
NumberFormat NumberFormatterGERMANY =
NumberFormat.getNumberInstance(Locale.GERMANY);
NumberFormat CurrFormatterGERMANY =
NumberFormat.getCurrencyInstance(Locale.GERMANY);
NumberFormat PercentFormatterGERMANY =
NumberFormat.getPercentInstance(Locale.GERMANY);
NumberFormat NumberFormatterUS =
NumberFormat.getNumberInstance(Locale.US);
NumberFormat CurrFormatterUS =
NumberFormat.getCurrencyInstance(Locale.US);
NumberFormat PercentFormatterUS =
NumberFormat.getPercentInstance(Locale.US);
page 30 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
page 31 of 32
Modul Pemrograman I (Pertemuan II) Universitas Pamulang
Referensi:
1. Hariyanto, Bambang, (2007), Esensi-esensi Bahasa Pemrograman Java, Edisi 2,
Informatika Bandung, November 2007.
2. Utomo, EkoPriyo, (2009), Panduan Mudah Mengenal Bahasa Java, Yrama Widya,
Juni 2009.
3. Tim Pengembang JENI, JENI 1-6, Depdiknas, 2007
4. http://people.uncw.edu/tompkinsj/133/numbers/Reals.htm, diakses tanggal 10
Oktober 2010
5. http://www.janeg.ca/scjp/lang/charLiteral.html, diakses tanggal 10 Oktober 2010
6. http://www.javacamp.org/javaI/primitiveTypes.html, diakses tanggal 10 Oktober
2010
page 32 of 32