Dasar Pemrograman Java: Identifiers & Keywords
Dasar Pemrograman Java: Identifiers & Keywords
Pertemuan II
DASAR PEMROGRAMAN
Keterangan :
* Tidak digunakan
** Ditambahkan pada versi 1.2
*** Ditambahkan pada versi 1.4
**** Ditambahkan pada versi 5.0
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
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)
[Link]
import [Link].*;
[Link](“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
didalamnya, 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
*/
„a‟ //huruf a
„\t‟ //tab
Untuk menampilkan karakter khusus seperti ' (single quotes) atau " (double
quotes), menggunakan karakter escape“\”. Sebagai contoh :
Meskipun String bukan merupakan tipe data primitif (namun 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
diantara 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:
Catatan :
Dalam mendefinisikan suatu nilai long tidak dianjurkan menggunakan
lowercase L, karena sulit dibedakan dengan angka 1.
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
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.
[Link]
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;
[Link]()
[Link]()
[Link]
public class OutputVariable {
public static void main( String[] args ){
int nilai = 10;
char x;
x = „A‟;
[Link]( nilai );
[Link](“nilai dari x = ” + x );
}
}
10
nilai dari x = A
[Link]("Hello ");
[Link]("world!");
Hello world!
[Link]("Hello ");
[Link]("world!");
Hello
world!
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.
[Link]
public class Konstanta {
public static void main (String args[]) {
final double PHI = 3.14;
double radius = 10;
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.
[Link]
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;
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++;
int i = 10,
int j = 3;
int k = 0;
k = ++j + i; //akan menghasilkan k = 4+10 = 14
int i = 10,
int j = 3;
int k = 0;
k = j++ + i; //akan menghasilkan k = 3+10 = 13
[Link]
public class RelasiDemo {
[Link]("Nilai variabel...");
[Link](" i = " + i);
[Link](" j = " + j);
[Link](" k = " + k);
//lebih besar dari
[Link]("Lebih besar dari...");
[Link](" i > j = " + (i > j)); //false
[Link](" j > i = " + (j > i)); //true
[Link](" k > j = " + (k > j)); //false
//lebih besar atau sama dengan
[Link]("Lebih besar dari atau sama dengan...");
[Link](" i >= j = " + (i >= j)); //false
[Link](" j >= i = " + (j >= i)); //true
[Link](" k >= j = " + (k >= j)); //true
//lebih kecil dari
[Link]("Lebih kecil dari...");
[Link](" i < j = " + (i < j)); //true
[Link](" j < i = " + (j < i)); //false
[Link](" k < j = " + (k < j)); //false
//lebih kecil atau sama dengan
[Link]("Lebih kecil dari atau sama dengan...");
[Link](" i <= j = " + (i <= j)); //true
[Link](" j <= i = " + (j <= i)); //false
[Link](" k <= j = " + (k <= j)); //true
//sama dengan
[Link]("Sama dengan...");
[Link](" i == j = " + (i == j)); //false
[Link](" k == j = " + (k == j)); //true
//tidak sama dengan
[Link]("Tidak sama dengan...");
[Link](" i != j = " + (i != j)); //true
[Link](" 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
Lebih kecil dari...
i < j = true
j < i = false
k < j = false
Lebih kecil dari atau sama dengan...
i <= j = true
j <= i = false
k <= j = true
Sama dengan...
i == j = false
k == j = true
Tidak sama dengan...
i != j = true
k != j = false
x1 op 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:
[Link]
public class TestAND {
public static void main( String[] args ){
int i = 0;
int j = 10;
//demonstrasi &&
test = (i > 10) && (j++ > 9);
[Link](i);
[Link](j);
[Link](test);
//demonstrasi &
test = (i > 10) & (j++ > 9);
[Link](i);
[Link](j);
[Link](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
Berikut ini sebuah contoh source code yang menggunakan operator logika
dan boolean OR :
[Link]
public class TestOR {
public static void main( String[] args ){
int i = 0;
int j = 10;
boolean test= false;
//demonstrasi ||
test = (i < 10) || (j++ > 9);
[Link](i);
[Link](j);
[Link](test);
//demonstrasi |
test = (i < 10) | (j++ > 9);
[Link](i);
[Link](j);
[Link](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
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 :
[Link]
public class TestXOR {
false
true
false
true
x1 Hasil
True False
False True
Berikut ini adalah contoh source code yang menggunakan operator logika
NOT :
[Link]
public class TestNOT {
public static void main( String[] args ){
boolean val1 = true;
boolean val2 = false;
[Link](!val1);
[Link](!val2);
}
}
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 :
[Link]
public class ConditionalOperator {
public static void main( String[] args ){
String status = "";
int grade = 80;
//mendapatkan status pelajar
status = (grade >= 60)?"Passed":"Fail";
//print status
[Link]( status );
}
}
Passed
[Link]
class ConditionalOperator2 {
public static void main( String[] args ){
int score = 0;
char answer = 'a';
score = (answer == 'a') ? 10 : 0;
[Link]("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.
[Link]
public class OperatorString {
public static void main(String[] args) {
String S1 = "Saya";
String S2 = "Belajar Java";
String S3 = "belajar java";
[Link](S1+" "+S2);
[Link]([Link](0,7));
[Link]([Link](S3));
[Link]([Link](S3));
}
}
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. [Link] diakses tanggal 10
Oktober 2010
5. [Link] diakses tanggal 10 Oktober 2010
6. [Link] diakses tanggal 10 Oktober 2010