JAVA BASIC : Dasar-dasar Java
Pada bagian ini akan dijelaskan tentang dasar-dasar pemrogramman java yang meliputi variabel, tipe data, operator, pengkondisian (if-else condition dan switch-case condition), dan looping (apa ya bahasa Indonesianya — pengulangankah?)
Variabel
Variabel adalah suatu nama yang digunakan untuk menyimpan suatu nilai dari tipe data tertentu. Nilai dari suatu variabel disebut literal. Sebelum digunakan variabel harus dideklarasikan. Deklarasi disesuaikan dengan tipe data yang ingin direpresentasikan.
Deklarasi variabel mengikut aturan sebagai berikut : tipeData namaVariabel.
Contoh berikut adalah deklarasi variabel dengan menggunakan tipe data int :
int bilangan1;
int bilangan2;
Kata int adalah tipe data, sedangkan bilangan1 dan bilangan2 adalah nama variabel. Dua deklarasi variabel di atas bisa diringkas menjadai : int bilangan1, bilangan2;
Tipe data dari suatu variabel bisa berupa tipe data primitif (seperti : int, byte, char, short, boolean dll) atau tipe data berupa class (misalnya Integer, Byte, Short, Boolean dll - bisa kelas yang anda buat).
Variabel bisa diinisialisasi (diberi nilai awal). Misalnya pada contoh di atas kita melakukan inisialisasi sebagai berikut :
int bilangan1 = 0;
int bilangan2 = 5;
Tanda ; (titik koma) menyatakan satu statemen yang utuh (Dalam bahasa manusia ’satu kalimat yang lengkap - berakhir dengan tanda titik’).
Java memiliki aturan-aturan dalam penamaan suatu variabel. Aturan-aturan itu adalah sebagai berikut :
- Penamaan variabel tidak boleh menggunakan kata-kata kunci dalam bahasa pemrogramman java. Kata-kata kunci tersebut adalah sebagai berikut (berdasarkan urutan abjad) : abstract, boolean, break, byte, case, catch, char, class, const, continue, default, do, double, else, extends, final, finally, float, for, goto, if, implements, import,instanceof, int, interface, long, native, new, package, private, protected, public, return, short, static, super, switch, synchronized, this, throw, throws, transient, try, void, volatile dan while.
- Harus dimulai dengan huruf atau garis bawah ( _ ) atau tanda dollar ($), tidak boleh angka. Huruf kedua dan seterusnya bebas (bisa angka) tapi tidak boleh menggunakan operator yang digunakan java (semisal +, ++, * , -, — dll)
- Panjang nama variabel terserah (dalam artian tidak dibatasi) tapi kata-katanya tidak boleh terpisah.
- Nama Variabel dalam java adalah case sensitif (membedakan huruf kecil dan huruf besar. Nama variabel bilangan1 dan Bilangan1 dianggap sebagai dua variabel yang berbeda.
- Penamaan variabel sebaiknya interpretatif, menggambarkan raealita yang diwakilinya. Penamaan variabel String namaMahasiswa adalah lebih interpretatif dibandingkan dengan variabel String x.
Sudah menjadi konvensi (kesepakatan) para programmer java juga, jika penamaan variabel dimulai dengan huruf, maka hurufnya harus huruf kecil.
Berikut contoh penamaan variabel yang valid dan tidak valid :
int bilangan1 –> valid
int bilangan 1 –> tidak valid
int 1bilangan –> tidak valid
int _bilangan1 –> valid
int $bilangan1 –> valid
int b1langan –> valid
int bi-langan –> tidak valid
int bi+langan –> tidak valid
Konstanta
Pada prinsipnya konstanta hampir mirip dengan variabel. Dua-duanya
digunakan untuk menyimpan suatu nilai dari tipe data tertentu. Bedanya
variabel menyimpan suatu nilai yang bisa berubah-ubah (dinamis)
sedangkan konstanta sekali dideklarasikan nilainya tidak akan pernah
berubah. Variabel bisa tidak diinisialisasi, sedangkan konstanta selalu
diinisialisasi dan nilai inisialisasi tersebut tidak akan pernah
berubah.
Deklarasi konstanta mirip dengan deklarasi variabel. Tetapi memiliki kata kunci final sebelum
tipe datanya. Dan seperti variabel, konstanta juga memiliki aturan
dalam penamaannya. Nama konstanta hanya boleh terdiri dari huruf besar
dan garis bawah (undescore). Berikut contoh penamaan konstanta yang
valid :
final double PI = 3.14;
Tipe Data
Sebagaimana telah dijelaskan sebelumnya, deklarasi variabel dan konstanta membutuhkan tipe data tertentu. Java memiliki delapan tipe data primitif, sedangkan untuk tipe data kelas jumlahnya tak terhingga (karena bisa kita definisikan sendiri). Delapan tipe data primitif ini sangat fundamental karena ia sebagai dasar untuk membangun tipe data kelas.
Kedelapan tipe data primitif tersebut bisa digolongkan kedalam tipe data numerik (untuk mengolah nilai-nilai yang berupa angka), tipe data boolean (berisi nilai benar dan salah - 0 dan 1), dan tipe data karakter huruf.
Tipe data numerik dibagi menjadi dua, yakni tipe data untuk menyimpan bilangan bulat dan tipe data untuk menyimpan bilangan pecahan.
Berikut tipe data primitif (dasar) dalam java :
Numerik Bilangan Bulat :
- byte (panjangnya 1 byte = 8 bit), menampung nilai dari -128 sd 127. Memiliki nilai default 0 –> artinya jika tidak diinisialisasi (diberi nilai awal) variabel yang menggunakan tipe data ini bernilai 0.
- short (panjangnya 2 byte = 16 bit), menampung nilai dari -32,768 sd 32,767. Nilai default juga 0.
- int (panjangnya 4 byte = 32 bit), menampung nilai dari -2,147,483,648 sd 2,147,483,647. Nilai default 0.
- long (panjangnya 8 byte = 64 bit), menampung nilai dari -9,223,372,036,854,775,808 sd 9,223,372,036,854,775,807. Nilai default 0.
Numerik Bilangan pecahan :
- float (panjangnya 4 byte), menampung nilai dari -3.4E38 (-3.4 * 10 pangkat 38) sd +3.4E38. Memiliki presisi angka sampai 7 digit (0.xxxxxxx)
- double (panjangnya 8 byte), menampung nilai dari -1.7E308 (-1.7 * 10 pangkat 308) sd +1.7E308. Memiliki presisi angka sampai 17 digit (0.xxxxxxxxxxxxxxxxx)
Deklarasi untuk tipe data numerik bilangan pecahan secara default menggunakan tipe data double. Jadi 0.24, 1.78, 2000.5034 dll dibaca sebagai double. Dengan eclipse deklarasi variabel float testFloat = 0.24; akan bertanda merah (berarti eclipse mendeteksi kesalahan). Deklarasi pecahan yang bertipe float harus diakhiri dengan huruf f. Deklarasi float yang salah di atas bisa diperbaiki menjadi sebagai berikut float testFloat = 0.24f.
Sudah 6 tipe data primitif yang kita bahas. Dua tipe data primitif yang lain adalah char dan boolean. char adalah tipe data untuk menampung nilai dari satu karakter (bisa berupa huruf atau angka). Sedangkan boolean adalah tipe data untuk menampung nilai benar (true) atau salah (false). Berikut contoh deklarasi variabel menggunakan tipe data primitif char dan boolean yg sudah dinisialisasi:
char nilaiKuliah = ‘A’;
boolean lulus = true;
Default tipe data char adalah karakter kosong, sedangkan default tipe data boolean adalah bernilai ‘false’.
Untuk setiap tipe data primitif yang telah dijelaskan, java memiliki tipe data kelas yang bersesuaian, yaitu Byte untuk tipe data primitif byte, Short untuk tipe data primitif short, Integer untuk tipe data primitif int, Long untuk tipe data primitif long, Float untuk tipe data primitif float, Double untuk tipe data primitif double, Boolean untuk tipe data primitif boolean dan Character untuk tipe data primitif char.
Array
Array adalah suatu variabel yang menyimpan kumpulan literal dari suatu tipe data yang sama. Misalnya kita seorang pedagang toko, ingin menyimpan pendapatan tiap bulan kita dalam suatu variabel yang bertipe double. Maka ada dua belas variabel dengan tipe data double yang kita butuhkan. Misalnya deklarasi variabel tersebut adalah sebagai berikut :
double pendapatanBulan1;
double pendapatanBulan2;
double pendapatanBulan3;
.
.
.
double pendapatanBulan12;
Tentu sangat repot mendeklarasikan variabel sebanyak itu. Bisa-bisa program yang kita buat hanya berisi kumpulan deklarasi variabel.
Array membantu kita mengelompokkan variabel-variabel yang sejenis ke dalam satu variabel array. Dengan array deklarasi variabel yang cukup banyak di atas, bisa diringkas sebagai berikut :
double[] pendapatanBulanan = new double[12];
atau double pendapatanBulanan[] = new double[12];
Dua contoh deklarasi variabel array di atas sama benarnya (di sini hanya ditunjukkan perbedaan cara deklarasi saja). Angka 12 menyatakan panjang array tersebut.
Seperti variabel, array juga bisa diinisialiasi (diberi nilai awal). Berikut contoh deklarasi array yang sudah diinisialisasi :
double pendapatanBulanan[] = new double{10000, 20000, 30000, 40000,
50000, 60000, 70000,80000, 90000,
100000, 110000,120000}
Untuk memanipulasi (mengolah) nilai dari suatu array kita harus mengakses indeks elemen array tersebut. Indeks element array selalu dimulai dari indeks 0, sehingga indeks terakhir suatu array adalah selalau panjang array dikurangi satu. Contoh berikut akan memanipulasi nilai indeks pertama menjadi 15000, dan indeks ke enam menjadi 75000 :
pendapatanBulanan[0] = 15000;
pendapatanBulanan[6] = 75000;
Konsep array bukan hanya berlaku pada tipe data primitif saja, ia juga berlaku pada tipe data kelas.
String
Mengolah "kata atau kalimat" di dalam programming java bisa dilakukan dengan menggunakan tipe data primitif char[] (array dari karakter). Contoh jika kita ingin menyimpan kata "hello" bisa dilakukan dengan ekspresi berikut :
char[] charHello = new char{’h',’e',’l',’l',’o'};
Tapi semakin panjang kata atau kalimat yang kita olah, ekspresi seperti di atas sangat tidak efektif. Karena kekurangan fleksibilitas char[] ini java menyediakan suatu kelas khusus yang bernama String untuk membuat dan memanipulasi kata atau kalimat. Dengan menggunakan kelas String, ekspresi di atas bisa diganti dengan ekspresi berikut :
String strHello = "hello";
Literal dari suatu objek String selalu diapit oleh tanda kutip ("");
Kelebihan kelas String dibandingkan dengan char[] adalah kelas String lebih dinamis. Kalau kita menggunakan char[], sekali deklarasi pangjang char[] tidak pernah berubah. Sedangkan String bisa kita manipuasi sesuka kita (bisa kita kurangi atau kita tambahkan). Pada variabel charHello, panjang kata yang bisa dimanipulasi selalu 5. Manipulasi pada variabel charHello hanya terbatas pada penggantian literalnya saja (sedangkan panjangnya selalu tetep). Sedangkan variabel strHello selain kita bisa mengganti literalnya, panjangnya juga secara bersamaan berubah sesuai dengan kata atau kalimat yang akan kita manipulasi. Misalnya kita ingin mengganti literal variabel strHello menjadi "halo, Apa Kabar?", kita cukup membuat ekspresi berikut :
strHello = "halo, Apa Kabar?";
String juga bisa kita tambahkan. Misalnya kita ingin menambahkan "halo, Apa Kabar?" dengan kalimat "Apakah baik-baik saja ", maka kita bisa melakukan operasi penambahan pada strHello sebagai berikut :
strHello = strHello + " Apkah baik-baik saja?";
Lebih fleksibel bukan?
Dengan eclipse anda bisa mengetahui prilaku (method) apa saja yang dimiliki oleh objek String (dengan menambahkan titik pada akhir objek string nya).
Operator
Operator berfungsi untuk mengoperasikan (memanipulasi, mengolah) satu atau lebih variabel. Variabel yang dioperasikan disebut operand.
Secara garis besar operator dalam java bisa dikelompokkan menjadi operator assignment, operator aritmatika, operator unary, operator equality, operator kondisional, operator komparasi, dan operator bitwise (paling jarang dipakai, di skip - tidak dijelaskan)
Operator assigment adalah tanda = (sama dengan), berguna untuk memberi literal pada suatu variabel tertentu. Berikut contoh operator assigment :
int testInt = 0;
Operator aritmatika adalah operator yang digunakan untuk melakukan operasi aritmatika (perhitungan). Operator ini ada lima macam yaitu operator penambahan (+), operator penguranan (-), operator perkalian (*), operator pembagian (/) dan operator sisa - mod (%).
Berikut contoh penggunaan operator arimatika :
int hasil = 1 + 2; // hasil = 3
hasil = hasil - 1; // hasil = 2
hasil = hasil * 2; // hasil = 4
hasil = hasil / 2; //hasil = 2
hasil = hasil + 8; // hasil = 10
hasil = hasil % 7; //hasil = 3
Operator penjumlahan (+) bisa juga diterapkan pada objek string (seperti pada contoh penjelasan kelas String).
Operator unary meliputi operator unary positif (+) untuk menandakan suatu bilangan positif (setiap bilangan tanpa tanda negatif, berarti termasuk bilangan positif). Operator unary negatif (-) untuk menandakan suatu bilangan negatif. Operator unary increment (++), berguna menambah menambah literal bilangan dengan literal bilangan satu. Operator unary decrement (–), berguna mengurangi literal bilangan dengan bilangan satu. Dan operator unary komplemen logika (!), berguna untuk mengkomplemenkan suatu logika yang bernilai true atau false.
Berikut contoh penggunaan operator unary :
int hasil = +1; // hasil = 1
hasil–; // hasil = 0
hasil++; // hasil = 1
hasil = -hasil; // hasil = -1
boolean success = false; //success = false;
success = !success; //success =true;
Operator equality digunakan untuk membandingkan dua variabel, apakah nilainya sama, lebih besar, lebih kecil, lebih besar atau sama dengan, lebih kecil atau sama dengan dan tidak sama dengan. Operator-operator tersebut adalah sebagai berikut :
== sama dengan
> lebih besar
< lebih kecil
>= lebih besar atau sama dengan
<= lebih kecil atau sama dengan
!= tidak sama dengan
Berikut contoh pemakaian operator equality (contohnya dapat ngambil dari situs java.sun.com)
class ComparisonDemo {
public static void main(String[] args){ int value1 = 1; int value2 = 2; if(value1 == value2) System.out.println("value1 == value2"); if(value1 != value2) System.out.println("value1 != value2"); if(value1 > value2) System.out.println("value1 > value2"); if(value1 < value2) System.out.println("value1 < value2"); if(value1 <= value2) System.out.println("value1 <= value2"); }}
Outpun program tersebut sbb:
value1 != value2 value1 < value2 value1 <= value2
Operator kondisional digunakan pada dua atau lebih ekspresi boolean. Operator ini terdiri dari operator kondisional AND (&&) dan operator kondisional OR (||). Berikut contoh penggunaan operator ini (contohnya ngambil dari situ sun juga) :
class ConditionalDemo {
public static void main(String[] args){ int value1 = 1; int value2 = 2; if((value1 == 1) && (value2 == 2)) System.out.println("value1 is 1 AND value2 is 2"); if((value1 == 1) || (value2 == 1)) System.out.println("value1 is 1 OR value2 is 1");
}}
outpun program di atas adalah :
value1 is 1 AND value2 is 2value1 is 1 OR value2 is 1
Operator komparasi digunakan untuk mengecek apakah suatu objek merupakan instrance dari suatu kelas tertentu. Operator komparasi adalah operator instranceof. Jika suatu objek yang kita tes merupakan instance dari suatu kelas yang kita tentukan, ekspresi ini bernilai true, false jika sebaliknya. Berikut contoh sederhana pemakaian operator komparasi.
KelasA a = new KelasA();
KelasB b = new KelasB();
if(a instanceof KelasA)
Sytem.out.println("objek adalah instance dari KelasA);
Karena a merupakan instance dari KelasA maka statement System.out.println("objek adalah instance dari KelasA") dieksekusi.
January 1st, 2007 at 10:45 pm
Ikut nimbrung gpp yach
Java Basic
1. Dasar & Pengenalan Bahasa Pemrograman
2. Paradigma Pemrograman: Struktural, Functional dan Object Oriented
4. Bahasa Pemrograman Java
5. Tipe-tipe Dasar Bahasa Pemrograman Java
6. Java Object Oriented
7. Java I/O
8. Java GUI
9. Java J/Applet
10. hhmmm… apa lagi ya.. so many.. but.. belajar java itu.. pake buku itu lho.. Java Basic SE + Java Advance.. emang sech.. both are English literature, but it’ll teach the wholly concept is needed for Java.
Eh gih, nerjemahin itu aja? hehehe… gak juga ding.. wong sebenarnya mulai dari item ke 7 ke atas itu.. sebenarnya sudah Java Characteristic.. ya dalam artian.. klo sudah bisa pemrograman yang lain.. item ke 7 ke atas itu.. tidak jauh beda di dalam konsepnya.. hanya beda secara mendasar di dalam syntax dan pemakainnya. Intinya: harus sudah paham Java OOP
Nach, mengerti bahasa pemrograman, khususnya Java.. hanya perlu paham 1-6. Sisanya, perlu banyak berlatih dan mencoba…..
Good luck
October 16th, 2008 at 4:16 am
maap..mo..bilang aja..ini..bagus..bener..
truz..gmn..cara.awal.mulainya…
mohon..bantu..mas/mbak/mpok/kang..
penjelasannya..