LAPORAN PRAKTIKUM I
TIPE DATA PRIMITIF, ABSTRAK DAN KOLEKSI
Disusun untuk Memenuhi Matakuliah Praktikum Algoritma Struktur DataDibimbing oleh Ibu Annisa Puspa Kirana, S. Kom, M. Kom
Oleh:
Dwitha Fajri Ramadhani
160533611410
Ika Damayanti
160533611505
S1 PTI’16 OFF B
UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA Februari 2017
Tujuan
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
1. Memahami penggunaan tipe data baik primitif, abstrak dan koleksi
2. Memahami penggunaan bahasa pemrograman Java secara sederhana dan Tools yang digunakan
DASAR TEORI
PENGENALAN JAVA
Dalam Java ada 2 jenis program berbeda, yaitu aplikasi dan applet. Keduanya merupakan bagian dari execute, dimana execute merupakan salah satu fase kelima dalam siklus program Java. Aplikasi adalah program yang biasanya disimpan dan di eksekusi dari komputer lokal. Applet adalah program yang biasanya disimpan pada komputer yang jauh,yang dikoneksikan pemakai lewat web browser. Komputer jauh menjalakan web server yang memberi layanan terhadap permintaan web browser.
Kebanyakan bahasa pemrograman modern berdiri di atas pustaka-pustaka kelas yang telah ada untuk mendukung fungsionalitas bahasanya. Pada bahasa Java, kelompok-kelompok kelas yang berkaitan erat dimasukkan dalam satu paket, bervariasi sesuai edisi Java.
Java adalah bahasa yang dapat dijalankan dimanapun dan di sembarang platform apapun, di beragam lingkungan: Internet, intranets, consumer electronic products, dan computer applications. Untuk beragam aplikasi yang dibuat dengan bahasa Java, Java dipaketkan dalam edisi-edisi berikut:
Java 2 Standar Edition (J2SE), J2SE menyediakan lingkungan pengembangan yang kaya fitur, stabil, aman, dan cross-platform. Edisi ini mendukung konektivitas basis data, rancangan user interface, masukkan/ keluaran (input/ output), dan pemrograman jaringan (network programming), dan termasuk sebagai paket-paket dasar bahasa Java.
Java 2 Enterpise Edition (J2EE), J2EE menyediakan tempat untuk membangun dan menjalankan multitier enterprise editions. J2EE berisi paket-paket di J2SE ditambah paket-paket untuk mendukung pengembangan Enterprise JavaBeans, Java Servlets, JavaServer Pages, XML, dan kendali transaksi yang fleksibel.
Java 2 Micro Edition (J2ME), J2ME selain menyedikan bahasa Java yang sama, unggul dalam portabilitas (kemampuan dapat dijalankan dimanapun), safe network delivery, seperti J2SE dan J2EE. Aplikasi-aplikasi dapat diskalakan (dimampukan) agar dapat bekerja dengan J2SE dan J2EE. J2ME adalah untuk beragam consumer electronic product, seperti pager, smart card, cell phone, handheld PDA, dan set-top box.
TOKEN
Dalam Java ada yang dikenal dengan istilah token. Token merupakan elemen terkecil di program yang mempunyai arti bagi kompilator. Kompilator bertugas membaca karakter-karakter di kode sumber dan menerapkan aturan-aturan secara progresif menjadi potongan lebih besar seperti identifier, ekspresi, kalimat, dan kelas. Token Java dibagi 5, yaitu:
Identifier
Identifier adalah token yang merepresentasikan nama. Dalam Java, identifier adalah nama yang diberikan untuk variable, class, atau method. Identifier boleh dimulai dengan huruf, underscore (_) atau tanda dollar ($). Identifier adalah case sensitive (membedakan huruf besar/ kecil) dan tidak ada batas maksimum.
Contoh :
Keyword (kata kunci) adalah dentifier yang digunakan dalam Java untk suatu tujuan khusus. Daftar keyword Java sebagai berikut: abstract, Boolean, Break, Byte, byvalue, Case, Catch, Char, Class, Const, continue, default, Do, double, else, extends, false, final, finally, float, for, goto, if, implements, import, instanceof, In, Interface, Long, Native, New, Null, Package, private, protected, public, return, short, static, Super, Switch, synchronized, This, threadsafe, throwm Transient, True, Try, Void, while.
Literal
Penulisan besaran untuk variabel adalah penting, literal Java terdiri dari angka, karakter, dan string. Angka terdiri dari bilangan bulat (integer), bilangan mengambang (floating point), dan boolean. Nilai boolean untuk true dan false direpresentasikan sebagai 1 dan 0.
Operator
Operator menspesifikasikan evaluasi atau komputasi terhadap objek. Operan yang dioperasikan dapat berupa literal, variabel, atau nilai yang dikirim oleh metode atau fungsi.
Separator
Separator digunakan untuk menginformasikan ke komplator Java mengenai adanya pengelompokkan di kode program. Berikut daftar separator yang digunakan dalam Java:
Simbol Nama Penggunaan
( ) Kurung
Untuk menghimpun parameter dalam definisi dan pemanggilan method, juga digunakan untuk menyatakan tingkat pernyataan, menghimpun pernyataan, untuk pengaturan alur program, dan untuk menyatakan tipe cast (cast types)
{ } KurawalKurung
Untuk menghimpunnilai yang otomatis dimasukkan ke dalam array, digunakan juga untuk mendefinisikan blok program, untuk cakupan class, method, dan lokal.
[ ] KurawalKurung Untuk menyatakan tipe array dan untuk membedakan nilai array.
, Koma Pemisah urutan identifier dalam deklarasi variabel.
. Titik Untuk memisahkan nama paket dari sub-paket dan memisahkan variabel atau method dari variabel referensi.class dan untuk
STRUKTUR PROGRAM JAVA
Penulisan program Java dapat dilakukan pada semua teks editor yang paling disukai baik itu editor handal semacam eclipse dan netbeans ataupun editor simpel seperti editplus, dan crimson. Dalam pembuatan program java yang harus diperhatikan dalam pembuatan program java adalah penulisan huruf besar dan kecil karena java memiliki sifat Case Sensitive. Berikut adalah bentuk umum dari penulisan program Java:
Pertama dalam program Java minimal terdapat sebuah class, dimana nama dari class
tersebut diusahakan sama dengan nama file Java (arti dari class akan dijelaskan pada pertemuan selanjutnya), dan setiap class harus dibuka dengan tanda ‘{‘ dan ditutup dengan tanda ‘}’. sebagai awal pengeksekusian aplikasi Java, kode (code) yang terdapat pada metode inilah yang akan dieksekusi pertama kali.
Metode main() didefinisikan sebagai public static void, berikut penjelasannya
public, berarti metode ini dapat dipanggil dari luar class
static, menunjukkan metode ini bersifat sama untuk semua class
void, berarti metode ini tidak mengembalikan nilai.
Argument args[] adalah array objek string argument baris-baris perintah
} }
Pembahasan ringkas :
Kata kunci public disebut access modifier yang mengendalikan ketampakkan terhadap bagian-bagian program yang lain dalam menggunakan kode ini.
Kata kunci class, segala sesuatu di program Java adalah berada di dalam suatu kelas. Berkenaan dengan contoh program sederhana diatas, nama class-nya adalah Hello.
Setelah kata kunci class adalah nama kelasnya. Nama kelas harus dimulai dengan huruf, setelah itu boleh kombinasi huruf dan angka. Dalam penamaan kelas tidak boleh menggunakan kata yang dicadangkan (reserved word yang kebanyakan merupakan kata kunci). Konvensi untuk penamaan kelas adalah kata benda dimulai dengan huruf capital (besar) di awal kata yang berarti.
Class tersebut memiliki fungsi main() dengan parameter variabel args dengan tipe array dari String. Fungsi main ini yang akan mengeksekusi statement
System.out.println (“Hello World!”); untuk menampilkan kata Hello World! ke console.
Pasangan kurung kurawal merupakan awal dan akhir badan dari metode. Di Java tiap kalimat harus diakhiri dengan titik koma (; semicolon). Ekspresi diatas memanggil fungsi atau metode println() di objek out yang berada di objek System. Objek out
merupakan standar output. Sementara kelas System adalah kelas yang melindungi atau mengkapsulkan seluruh fungsionalitas sistem.
TIPE DATA PRIMITIF
1. 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. Tidak seperti tipe data lainnya, Java tidak mendukung tipe data unsigned yang hanya bisa mempresentasikan nilai postif. Untuk jelasnya akan dijelaskan oleh tabel dan penjelasan di bawah ini :
Tipe Data Ukuran (bit) Range
byte 8 -128 s.d. 127
short 16 -32768 s.d. 32767
int 32 -2147483648 s.d. 2147483647
long 64 -9223372036854775808 s.d.
9223372036854775807
1.1 byte
1.2 short
Pada umumnya diaplikasikan pada komputer-komputer 16-bit, yang saat ini semakin jarang keberadaanya. Contoh :
1.3 int
Tipe ini 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.Selain itu, secara teori setiap ekspresi yang melibatkan tipe integer byte, short, int, long) semuanya akan dipromosikan ke int terlebih dahulu sebelum dilakukan proses perhitungan. Contoh :
1.4 long
2. floating-point (Bilangan Pecahan)
Tipe floating-point 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. Dalam Java tipe ini dibedakan menjadi dua jenis, yaitu float dan double.
Tipe Ukuran Range Presisi (jumlah digit) bytes bit
float 4 32 +/- 3.4 x 1038 6-7
double 8 64 +/- 1.8 x 10308 15
2.1 float
Tipe ini digunakan 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). Permasalahan yang timbul dari pemakaian tipe float untuk nilai-nilai yang terlalu kecil atau justru terlalu besar, karena nilai yang dihasilkan akan menjadi tidak akurat. Contoh penggunaan variabel :
2.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 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. Contoh :
3. char
sekumpulan karakter yang terdapat pada semua bahasa, seperti bahasa Latin, Arab, Yunani dan lain-lainnya. Karena bahasa Java dirancang untuk dapat diterapkan di berbagai macam platform, maka Java menggunakan karakter Unicode yang membutuhkan ukuran 16-bit. Untuk karakter-karakter yang tidak dapat diketikkan secara langsung melalui keyboard, java menyediakan beberapa escape sequence (pasangan karakter yang dianggap sebagai karakter tunggal). Escape sequence tidak dianggap sebagai String, melainkan tetap sebagai tipe karakter khusus. Di bawah ini akan dijelaskan beberapa contoh tentang escape sequence.
Escape Sequence Keterangan
Tipe boolean adalah tipe data yang digunakan untuk menampung nilai logika, yaitu nilai yang hanya memiliki dua buah kemungkinan (benar atau salah). Tipe ini ditandai dengan kata kunci Boolean. Dalam bahasa Java, nilai benar dipresentasikan dengan kata kunci true dan nilai salah dengan kata kunci false. Contoh :
Tipe data abstrak dapat merepresentasikan kelompok tipe data dengan beragam tipe primitif yang bisa diciptakan secara dinamis.
class
Kelas dapat didefiniskan sebagai cetak biru (blueprint) atau prototipe/kerangka yang mendefiniskan variabel-variabel (data) dan method-method (perilaku) umum dari sebuah objek. Dengan kata lain kelas adalah sebuah kesatuan yang terintegrasi antara method dan data yang mengacu pada suatu objek.
Dalam dunia permrograman, sebenarnya kelas tidak jauh berbeda dengan tipe data sederhana. Perbedaannya, tipe data sederhana digunakan untuk mendeklarasikan variabel ‘normal’, sedangkan kelas digunakan untuk mendeklarasikan sebuah variabel yang berupa objek. Variabel yang berupa objek ini sering disebut dengan referensi objek (object reference).
Pada saat kita membuat sebuah kelas baru. Sekali didefiniskan, maka tipe data baru ini dapat digunakan untuk membuat suatu objek dari tipe tersebut. Dengan kata lain, kelas adalah pola (template) untuk pembuatan objek, dan objek adalah wujud nyata (instance) dari sebuah kelas. Contoh :
Setelah kita membuat sebuah kelas, untuk menggunakannya maka kita harus membuat sebuah instance dari kelas tersebut. Berikut cara membuat objek dari kelas :
TIPE DATA KOLEKSI
Koleksi adalah tipe data yang berupa rangkaian atau kumpulan data ataupun obyek yang berindeks. Terdapat tiga tipe dasar koleksi di Java yaitu:
2. List, koleksi dinamis dengan ukuran adaptif dan bisa mengelompokkan tipe data yang sama ataupun berbeda
Latihan 1 A
Pemrograman Java
Nama Program : array.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
pemanggilan pada method utama dengan nilai val 5. Dan program akan menampilkan hasil dari pemanggilan method tersebut.
Latihan 1 B
Pemrograman Java
Nama Program : casting.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
Program ini digunakan untuk mengonversikan masukan karakter user ke dalam tipe data byte. Pada program ini diperlukan import java.until.Scanner; hal ini digunakan
sebagai input. Kemudian user mendeklarasikan Scanner read=new
Latihan 1 C
Pemrograman Java
Nama Program : CharTest.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
Program ini digunakan untuk mengonversi masukan karakter user ke dalam tipe data string. Pada program ini diperlukan import java.until.Scanner; hal ini digunakan sebagai input. Kemudian user mendeklarasikan :
lalu user diperintahkan untuk memasukkan karakter pertama, kedua, ketiga dan keempat dengan menggunakan perintah read.next().charAt(0);setelah user menginputkan karakter kemudian karakter di konversi kedalam tipe data string didalam 1 kalimat dengan menggunakan
String s= Character.toString(ch_a)+Character.toString(ch_b)+ Character.toString(ch_c)+Character.toString(ch_d);
Latihan 1 D
Pemrograman Java
Nama Program : IntegerTest.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
Program ini digunakan untuk mengonversi nilai yang dimasukkan user ke dalam kapasitas tipe data int. Pada program ini diperlukan import java.until.Scanner; hal ini digunakan sebagai input. Kemudian user mendeklarasikan :
Scanner read=new Scanner(System.in);
Latihan 1 E
Pemrograman Java
Nama Program : Matriks.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Penjelasan Program :
Latihan 1 F
Pemrograman Java
Nama Program : ObjekADT.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
Latihan 2
Pemrograman Java
Nama Program : Array5Index.java
Bahasa Pemrogramam : Java
Compiler : NetBeans IDE 8.2
Script program :
Output Program :
Penjelasan Program :
KESIMPULAN
1. Dalam belajar pemrograman terlebih dahulu harus mengerti tentang sistem operasi, algoritma dan flowchart.
2. Dibutuhkan ketelitian dalam penulisan kode program bahasa Java, karena salah penulisan sekecil apapun tetap tidak akan bisa di eksekusi oleh program (error).
3. Dalam java terdapat 3 tipe data, yaitu tipe data primitif, tipe data abstrak, dan tipe data koleksi.
4. Tipe data primitif terdiri dari tipe data bilangan bulat/ integer (byte, short, int, long), bilangan pecahan/floating point (float, double), karakter/ char, dan boolean.
5. Tipe data abstrak yang dapat merepresentasikan kelompok tipe data dengan beragam tipe primitif yang bisa diciptakan secara dinamis. Seperti class.
6. Tipe data koleksi terdiri dari kumpulan data ataupun obyek yang berindeks seperti array, map dan list.
DAFTAR RUJUKAN
1. Annisa Puspa Kirana, S.Kom, M.Kom. 2016. Modul Praktikum Algoritma dan Struktur Data. Malang : Universitas Negeri Malang.
2. Kuncoro, Dedy. 2013. Macam-macam Tipe Data Pada Java, https://dedykuncoro.com/ 2013/03/macam-macam-tipe-data-pada-java.html, diakses pada tanggal 11 Februari 2017, pukul 20:01.