Modul Dasar Pengetahuan Java & Cara Pemrograman
description
Transcript of Modul Dasar Pengetahuan Java & Cara Pemrograman
MODUL JAVA 2
MODUL DASAR PENGETAHUAN JAVA DAN CARA PEMROGRAMAN
INFORMATION SYSTEMS EXPO 2015
Page | 1
Daftar Isi Daftar Isi .................................................................................................................................................. 1
A. DASAR PENGETAHUAN JAVA .......................................................................................................... 2
1. Tipe Data Primitive & String ........................................................................................................ 2
5. Variable ....................................................................................................................................... 5
6. Casting & Konversi Tipe Data ...................................................................................................... 5
7. Operator ...................................................................................................................................... 6
8. Bentuk Operasi Percabangan, Perulangan dan Rekursif ............................................................ 8
9. Metode / Fungsi .......................................................................................................................... 8
B. CARA PEMROGRAMAN DASAR ....................................................................................................... 9
1. Memulai Pemrograman .............................................................................................................. 9
2. Deklarasi Variable ....................................................................................................................... 9
3. Meminta Inputan User .............................................................................................................. 10
4. Membuat Kode Logika .............................................................................................................. 10
5. Membuat Output ...................................................................................................................... 10
6. Compile dan Eksekusi ................................................................................................................ 11
Page | 2
A. DASAR PENGETAHUAN JAVA
1. Tipe Data Primitive & String Bahasa pemrograman Java mendefinisikan delapan tipe data primitif. Mereka
diantaranya adalah boolean (untuk bentuk logika), char (untuk bentuk tekstual), byte, short, int,
long (integer), double and float (floating point). Boolean adalah tipe data untuk besaran logika,
hanya memiliki dua kemungkinan nilai, true atau false.
Data Type Size/Format Range
byte 8‐bit ‐128 to +127 if signed(‐2
7 to 2
7‐1)
0 to 255 if unsigned
short 16‐bit ‐32768 to +32768 (‐215 to 215‐1)
int 32‐bit ‐231 to 231‐1
long 64‐bit ‐2
63 to 2
63‐1
float 32‐bit +/‐ about 2
31
double 64‐bit +/‐ about 2
63
char 16‐bit Sebuah karakter
boolean 1‐bit Nilai boolean (true atau false)
Agar tidak bertanya‐tanya tentang variabel yang menampung lebih dari satu karakter, Java
menyediakan String untuk menampung data yang lebih dari satu karakter. Sebetulnya String
bukan tipe data, melainkan objek yang berisi kumpulan karakter (char). Penggunaan String,
tidak beda dengan dengan penggunaan tipe data yang lain.
a. Integer (Bilangan Bulat)
Tipe data yang masuk menjadi bagian ini adalah byte, short, int dan long. Semua tipe data ini
bersifat Signed, yaitu bisa mempresentasikan nilai positif dan negatif
1. Byte
Digunakan pada saat kita bekerja dengan sebuah data stream dari suatu file maupun jaringan,
yaitu untuk kepeluan proses membaca/menulis. Selain itu, tipe ini juga digunakan saat bekerja
dengan data biner yang tidak kompatibel dengan tipe-tipe lain yang didefiniskan di dalam Java.
class ContohByte {
public static void main(String [] args){
byte a;
a=127;
System.out.println(a);
}
}
2. Short
Pada umumnya diaplikasikan pada komputer-komputer 16-bit, yang saat ini semakin jarang
keberadaanya. Contoh :
Page | 3
class ContohShort {
public static void main(String[]args){
short umurWafiy = 23;
short umurAdit = 13;
short selisih = umurWafiy - umurAdit;
System.out.println(“Selisih umur mereka adalah “ + selisih + ”
tahun”);
}}
3. Int
Merupakan tipe yang paling banyak dipakai dalam merepresentasikan angka dalam Java,
dikarenakan dianggap paling efisien dibandingkan dengan tipe-tipe integer lainnya. Tipe Int banyak
digunakan untuk indeks dalam struktur pengulangan maupun dalam konstruksi sebuah array.
class HitungGaji{
public static void main(String[]args){
int gaji = 5000000;
int lamaKerja = 4;
int besarGaji = gaji*lamaKerja;
System.out.println(besarGaji);
}
}
4. Long
Tipe ini digunakan untuk kasus-kasus tertentu yang nilainya berada di luar rentang tipe int, karna
tipe ini punya range paling tinggi dibanding Integer lainnya. Dengan kata lain, tipe long terpaksa
digunakan jika data memiliki range diluar range int.
public class MassaPlanet{
public static void main (String[]args){
long volum=1864824217374668;
long massaJenis=77886;
long massa=volum*massaJenis;
System.out.println(massa);
}
}
b. Float (angka desimal)
Digunakan untuk merepresentasikan nilai-nilai yang mengandung pecahan atau angka decimal di
belakang koma, seperti 3.1416,5.25, dan sebagainya. Bilangan semacam ini disebut sebagai bilangan
riil
1. Float
Untuk menandakan nilai–nilai yang mengandung presisi atau ketelitan tunggal (single-precision)
yang menggunakan ruang penyimpanan 32-bit. Presisi tunggal biasanya lebih cepat untuk processor-
processor tertentu dan memakan ruang penyimpanan setengah kali lebih sedikit dibandingkan
presisi ganda (double precision).
2. Double
Tipe ini mengandung tingkat ketelitian ganda atau presisi ganda (double precision) dan
menggunakan ruang penyimpanan 64-bit untuk menyimpan nilai. Tipe double tentu lebih cepat
Page | 4
untuk melakukan perhitungan-perhitungan matematis daripad tipe float. Untuk perhitungan yang
bersifat bilangan riil dan menghasilkan hasil yang lebih akurat, maka lebih baik menggunakan tipe
double.
class KelilingLingkaran {
public static void main (String[] args) {
double pi = 3.1416;
double r = 2.12;
double keliling;keliling = 2*pi*r;
System.out.println(“Keliling Lingkaran = ”+ keliling);
}}
c. Char
Tipe data char merupakan tipe untuk menyatakan sebuah karakter. Java menggunakan karakter
Unicode untuk merepresentasikan semua karakter yang ada . Unicode ialah sekumpulan karakter
yang terdapat pada semua bahasa, seperti bahasa Latin, Arab, Yunani dan lain-lainnya.
class ContohKarakter {
public static void main (String[] args) {
char ch = 65;// 65 merupakan kode untuk karakter A;
System.out.println(“ch1=”+ch);
ch++; //increment(penaikan nilai sebesar 1)
System.out.println(“ch2 = ”+ ch);}}
d. Boolean
Adalah tipe data yang digunakan untuk menampung nilai logika, yaitu nilai yang hanya memiliki
dua buah kemungkinan (benar atau salah). Tipe ditandai dengan kata kunci Boolean. Dalam bahasa
Java, nilai benar dipresentasikan dengan kata kunci true dan nilai salah dengan kata kunci false.
class ContohBolean {
public static void main (String[] args) {
boolean a = true;
if (a) {
System.out.println(“Perintah dilaksanakan ”);
}
else {System.out.println(“Perintah tidak dilaksanakan ”);}
}
}
e. String
String adalah tipe data untuk teks yang merupakan gabungan huruf, angka, whitespace (spasi), dan
berbagai karakter. Fungsi ini digunakan untuk membuat identifier String/teks.
class ContohString {
public static void main(String [] args){
String a = “Sedang apa ”;
System.out.println(a);
}
}
Page | 5
5. Variable Variabel adalah item yang digunakan data untuk menyimpan pernyataan objek. 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.
Berikut Aturan penamaan variable :
• Diawali dengan
▫ huruf/abjad
▫ karakter mata uang
▫ underscore ( _ )
• Terdiri dari huruf/abjad, angka dan underscore
• Tidak boleh mengandung karakter khusus atau spasi
• Tidak boleh diawali dengan angka
a. Deklarasi & Inisialisasi Variable
<data tipe> <name> [=initial value]; Contoh: int jumlahSiswa = 23;
Contoh program untuk menunjukkan nilai variable:
public class ContohVariabel2
{
static int a; // member variable
static boolean b; // member variable static float c; // member variable
public static void main(String args[]){
System.out.println(a);
System.out.println(b);
System.out.println(c);
}
}
6. Casting & Konversi Tipe Data Konversi adalah cara untuk memberikan nilai suatu data dari satu tipe data ke tipe data yang
lain. Untuk konversi data harus memenuhi dua kriteria berikut ini :
1. Dua tipe data yang kompatibel
2. tipe data awal lebih kecil dibandingkan dengan tipe data tujuan.
Jika dua syarat tersebut tidak terpenuhi maka bisa dilakukan teknik casting, yaitu melakukan
perubahan tipe data dengan cara dipaksa. Casting ini bisa langsung dilakukan otomotis oleh java
dengan cara menambahkan tipe data cating dikurung kemudian dilanjutkan dengan proses
yang mau dijalankan.
Pada potongan program di bawah ini menunjukkan bahwa hasil pembagian variable
inputAwal dengan total jumlah a dan b akan menghasilkan tipe data double , bukan int apabila tetap
digunakan int maka hasilnya tidak akan akurat karena angka dibelakang desimal akan terpotong,
yang seharusnya dengan tipe data double hasilnya adalah 2.5 , dengan int hasilnya hanya 2.
int inputAwal = 400;
int a = 100;
int b = 60;
double hasil = (double) inputAwal/ ( a+ b);
Page | 6
7. Operator Dalam Java, ada beberapa tipe operator. Ada operator aritmatika, operator relasi, operator logika,
dan operator kondisi.
a. Operator Aritmatika
Operator aritmatika merupakan operator yang berhubungan dengan fungsi matematika.
contoh Nama Hasil
a + b Penjumlahan Jumlah dari $a dan $b
a - b Pengurangan Selisih dari $a dan $b
a * b Perkalian Hasil kali dari $a dan $b
a / b Pembagian Pembagian dari $a dan $b
a % b Modulus Sisa dari $a dibagi dengan $b
public class OperasiAritmatika
{
public static void main(String args[])
{
short x = 6;
int y = 4;
double a = 2.433 ;
double b = 7.987 ;
System.out.println("x= "+ x + ", y = "+y);
System.out.println("x + y ="+ (x + y));
System.out.println("x - y ="+ (x - y));
System.out.println("x / y ="+ (x / y));
System.out.println("x % y ="+ (x % y));
System.out.println("a = "+ a + ", b = "+b);
System.out.println("a / b ="+ (a / b));
System.out.println("x / b ="+ (x / b));
System.out.println("b / x ="+ (b / x));
}
b. Operator Relasi
Operator Relasi membandingkan dua nilai dan menentukan keterhubungan diantara nilai- nilai
tersebut. Hasil keluarannya berupa nilai boolean yaitu true atau false.
contoh Nama Hasil
a == b sama dengan benar jikaa sama dengan b
a != b tidak sama benar jika a tidak sama dengan b
a < b lebih kecil benar jika a lebih kecil b
a > b lebih besar benar jika a lebih besar b
a <= b lebih kecil atau sama dengan
benar jika a lebih kecil atau sama dengan b
a >= b lebih besar atau
sama dengan
benar jika a lebih besar atau sama dengan b
Page | 7
public class operator {
public static void main(String args[])
{
int a = 4;
int b = 3;
System.out.println(a==b);
System.out.println(a!=b);
System.out.println(a<b);
System.out.println(a>b);
System.out.println(a<=b);
System.out.println(a>=b);
}
}
c. Operator Logika
Operator logika memiliki satu atau lebih operand boolean yang menghasilkan nilai boolean.
Terdapat enam operator logika yaitu: && (logika AND), & (boolean logika AND), || (logika
OR), | (Boolean logika inclusive OR), ^ (boolean logika exclusive OR), dan ! (logika NOT).
contoh Nama Hasil
a &&b AND benar jika a dan b benar
a || b OR benar jika a atau b benar
a ^b XOR benar jika a atau b benar tetapi tidak keduanya
public class operator {
public static void main(String args[])
{
System.out.println(a&&b);
System.out.println(a||b);
System.out.println(a^b);
System.out.println(a&b);
System.out.println(a|b);
System.out.println(a!=b);
}
}
d. Operator Kondisi
Operator perbandingan ini digunakan pada struktur kontrol program, seperti if, elseif, di mana
dilakukan perbandingan antar dua nilai.
Contoh Nama Hasil
a == b sama dengan benar jikaa sama dengan b
a != b tidak sama benar jika a tidak sama dengan b
a < b lebih kecil benar jika a lebih kecil b
a > b lebih besar benar jika a lebih besar b
Page | 8
a <= b lebih kecil atau sama dengan
benar jika a lebih kecil atau sama dengan b
a >= b lebih besar atau sama dengan
benar jika a lebih besar atau sama dengan b
public class Kondisi {
public static void main(String args[]) {
int a=5;
int b=7;
if (a<5) {
System.out.println(“True”);
}
Else {
System.out.println(“False”);
}
}
}
8. Bentuk Operasi Percabangan, Perulangan dan Rekursif SILAHKAN BUKA MODUL STRUKTUR KONTROL
9. Metode / Fungsi Metode adalah sekumpulan statement program yang disatukan menjadi sebuah subprogram
atau fungsi, diawali dengan tanda “{“ diakhiri dengan tanda “}”. Ada 2 macam metode dan 1 metode
pengendali, yaitu:
Metode kelas : Metode ini dapat dieksekusi walaupun tidak terdapat objek dalam kelas
tersebut. Seperti variabel kelas, metode kelas juga dideklarasikan menggunkan keyword
static.
Metode objek : Metode ini hanya dapat dieksekusi sehubungan dengan objek tertentu.
Metode main() : Metode ini digunakan pada saat aplikasi Java dimulai, menggunakan
keyword static. Sebelum aplikasi mulai dieksekusi, diperlukan metode walaupun tanpa
objek.
Metode adalah suatu blok dari program yang berisi kode dengan nama dan properti yang dapat
digunakan kembali. Metode dapat mempunyai nilai balik atau tidak, penjelasan beserta contohnya
adalah sebagai berikut:
Metode memiliki jenis void (tidak memiliki nilai keluaran), memiliki nilai keluaran serta bisa memiliki
parameter atau tidak memiliki parameter.
a. Void
Fungsi ini tidak memiliki keluaran bertipe data
b. Memiliki Nilai Keluaran / return
Page | 9
Berarti fungsi ini jika dipanggil akan menghasilkan nilai bertipe int
c. Memiliki parameter/ tidak
Terkadang metode membutuhkan input data untuk menjalankan fungsinya , misalnya:
Metode ini apabila dipanggil harus mengikutkan inputan tipe data bertipe string di dalam kurungnya,
jadi :
String a = “halo”;
Namametode (a);
B. CARA PEMROGRAMAN DASAR
1. Memulai Pemrograman Setelah berhasil menginstall Netbeans dan Java, silahkan buka Netbeans anda. Yang perlu diingat-
ingat dalam melakukan pemrograman dengan Java adalah :
a. Bersifat Case Sensitive (nama varible, kelas dll) harus benar Kapital tdaknya
b. Harus diakhiri titik koma (;) di setiap deklarasi variable, kode logika kecuali saaat pembuatan
kelas dan metode/fungsi
c. Untuk menjalankan program , harus memanggil metode/fungsi yang telah dibuat atau kode
logika di dalam kurung kurawal main yaitu public static void main(String args[]) {//letakkan
kode disini}
Berikut ini adalah contoh kasus matematika yang harus diotomasikan penghitungannya dengan java:
Andi memiliki uang sebesar $1000 yang akan ditabungnya di Bank XYZ . Bank XYZ memberikan
ketentuan bunga majemuk 11,54% dan biaya administrasi sebesar $15 setiap tahunnya sementara
itu Andi juga memiliki hutang sebesar $500 yang berbunga sebesar 24% per tahun, hitung berapa
jumlah sisa uang Andi pada tahun keempat dengan asumsi Andi menabung dan berhutang pada saat
yang sama, kemudian pada tahun ke 4 itu juga Andi membayar hutangnya dengan uang
tabungannya.
Bunga majemuk adalah bunga yang jumlahya merupakan presentase dari uang hasil bunga tahun
sebelumnya ditambah jumlah tabungan. Jadi bunga tahun ke-2 adalah 11,54% dari jumlah tabungan
awal + bunga tahun 1.
2. Deklarasi Variable Deklarasi Variable bisa berisi nilai atau tidak. Minimal berisi tipe data dan nama.
double bunga;
double tabungan;
int jmlTahun;
Page | 10
double bungaUtang;
double utang;
3. Meminta Inputan User Tujuan meminta inputan dari user adalah agar nilai yang dikalkulasi bersifat dinamis, karena ini
adalah salah satu otomasi kalkulasi yang diberikan oleh java, dengan 1 rumus hasil program yang
anda buat bisa menghasilkan output dengan variasi input yang berbeda-beda.
import java.util.Scanner;
Scanner sc = new Scanner (System.in) ;
System.out.print("Masukkan % bunga per tahun :");
bunga=sc.nextDouble();
System.out.print("Masukkan Jumlah Tabungan :");
tabungan=sc.nextInt();
System.out.print("Masukkan Jumlah Tahun :");
jmlTahun=sc.nextInt();
System.out.print("Masukkan % bunga per tahun utang:");
bungaUtang=sc.nextDouble();
System.out.print("Masukkan Jumlah utang :");
utang=sc.nextInt();
Input dari user dengan membuat Scanner. Sementara sc disini adalah nama Scanner yang dibuat,
namanya terserah anda. Kemudian masukkan inputan sesuai variable (di sini nilai variable akan
diassign). Import java.util.Scanner adalah untuk memanggil fungsi Scanner ke program.
Dengan menggunakan . (dot) setelah nama Scanner (sc) , akan memanggil fungsi yang dimiliki oleh
Scanner antara lain nextInt() untuk memasukkan inputan bertipe data int, nextDouble() untuk
memasukkan nilai input bertipe data double dll.
4. Membuat Kode Logika Untuk melakukan kalkulasi atau melakukan sesuatu untuk mencapai tujuan program , dibutuhkan
rangkaian kode program. Untuk studi kasus ini adalah bagaimana mencari sisa uang apabila Andi
membayar utangnya dengan uang tabungannya. Ini berarti tiap tahun jumlah tabungan akan
bertambah 11,54% dari jumlah tahun sebelumnya
n= jumlah tabungan ; m=jumlah utang
(((1,1154*n-15)*1,1154-15)*1,1154-15)*1,1154-15= n akhir tahun ke-4
(((1,24)*1,24)*1,24)*1,24= m akhir tahun ke-4
for (int i=0;i<jmlTahun;i++) {
tabungan = (tabungan*bunga/100) + tabungan - 15;
utang = (utang*bungaUtang/100) + utang;
}
5. Membuat Output Membuat hasil keluaran yang merepresentasikan jawaban yang diminta / tujuan program. Karena
dalam studi kasus ini meminta sisa uang Andi apabila ia membayar utang dengan uang tabungannya
maka yang diminta adalah jumlah tabungan, hutang dan sisa uang pada tahun ke-4
Page | 11
System.out.println ("Jumlah tabungan adalah $" + tabungan);
System.out.println ("Jumlah hutang adalah $" + utang);
System.out.println ("Sisa $" + (tabungan - utang));
6. Compile dan Eksekusi Netbeans akan mecompile kemudian menjalankan program setelah kita menekan Shift + F6
Atau dengan menekan tombol namun tombol ini hanya boleh ditekan apabila main hanya
berjumlah 1 di setiap project. Lebih baik menggunakan Shift + F6 untuk menjalankan program.
Hasil :
INPUT
OUTPUT
Program Lengkap Tabungan.java :
import java.util.Scanner;
public class Tabungan {
public static void main (String[] args) {
Scanner sc = new Scanner (System.in) ;
double bunga;
double tabungan;
int jmlTahun;
double bungaUtang;
double utang;
System.out.print("Masukkan % bunga per tahun :");
bunga=sc.nextDouble();
System.out.print("Masukkan Jumlah Tabungan :");
tabungan=sc.nextInt();
System.out.print("Masukkan Jumlah Tahun :");
jmlTahun=sc.nextInt();
System.out.print("Masukkan % bunga per tahun utang:");
bungaUtang=sc.nextDouble();
System.out.print("Masukkan Jumlah utang :");
utang=sc.nextInt();
for (int i=0;i<jmlTahun;i++) {
tabungan = (tabungan*bunga/100) + tabungan - 15;
utang = (utang*bungaUtang/100) + utang;
}
System.out.println ("Jumlah tabungan adalah $" + tabungan);
System.out.println ("Jumlah hutang adalah $" + utang);
System.out.println ("Sisa $" + (tabungan - utang));
}
}