MAKALAH PRATIKUM BAHASA PEMROGRAMAN 1
“ Tipe Data & Operator ”
Disusun
Oleh :
Nama : Ahmad Solihin
NIM : 20160810006
Prodi : Bahasa Pemrograman 1
LABORATORIUM PRATIKUM
FAKULTAS KOMPUTER UNIVERSITAS KUNINGAN
TAHUN 2016/2017
Dasar Teori & Pembahasan
Tipe Data
Tipe data adalah jenis data yang mempunyai batasan tempat dan
karakteristik sesuai dengan interprestasi data dan dapat diolah oleh
komputer untuk memenuhi kebutuhan dalam pemrograman komputer. Tipe data
pada umumnya termasuk tipe data primitif, yaitu interger, floating point
number dan character (string). Kumpulan dari tipe data primitif yang
sejenis juga dapat disatukan dalam sebuah blok yang disebut array.
Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memori komputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi.
Jadi dengan kata lain, misalkan sebuah variabel adalah wadah suatu zat, kemudian kita memiliki beberapa zat yang ingin kita simpan didalam wadah tersebut. Misal, kita memiliki air untuk ditempatkan dalam suatu wadah, apa yang akan kita gunakan untuk menampung / mewadahi air tersebut ? Gelas ? Ember ? Gayung ? Ya benar sekali. Kita harus menggunakan wadah khusus zat cairan untuk menampung / mewadahi air, kita tidak mungkin menggunakan wadah lainnya. Kita tidak mungkin menggunakan kardus untuk mewadahi air bukan ? Karena kardus digunakan untuk mewadahi zat padat. Jadi sama halnya dengan tipe data, apabila kita ingin menampung/menyimpang sebuah input huruf, kita tidak bisa menyimpannya dalam bentuk tipe data angka / integer, karena tipe data integer / angka hanya di desain khusus untuk menampung / mewadahi inputan berupa angka saja.
Setelah kita memahami apa itu tipe data seperti yang dijelaskan di atas, kita bisa memulai untuk mengetahui apa saja tipe data yang ada, khususnya dalam bahasa pemrograman Java.
Java mempunyai 11 macam tipe data yang terdiri atas tipe data sederhana dan referensi / komposit. Tipe sederhana meliputi byte, short, int, long, char, float, double dan boolean yang terbagi menjadi 3 tipe. Sedangkan tipe data referensi meliputi class,array dan interface.
A. Tipe Data Sederhana
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.
3. 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. 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.
4. Boolean
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.
B. Tipe Data Referensi
1. Class
Contoh Operator Aritmatika :
Contoh Operator Relasi :
Contoh Program
Contoh Source Code Program Operator Logika:
Berikut ini adalah output program,
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.
Hasil keluaran program adalah,
Score = 10
Setiap variabel atau konstanta yang ada dalam kode program, sebaiknya kita tentukan dengan pasti tipe datanya. Ketepatan pemilihan tipe data pada variabel atau konstanta akan sangat menentukan pemakaian sumberdaya komputer (terutama memori komputer). Salah satu tugas penting seorang programmer adalah memilih tipe data yang sesuai untuk menghasilkan program yang efisien dan berkinerja tinggi.
Jadi dengan kata lain, misalkan sebuah variabel adalah wadah suatu zat, kemudian kita memiliki beberapa zat yang ingin kita simpan didalam wadah tersebut. Misal, kita memiliki air untuk ditempatkan dalam suatu wadah, apa yang akan kita gunakan untuk menampung / mewadahi air tersebut ? Gelas ? Ember ? Gayung ? Ya benar sekali. Kita harus menggunakan wadah khusus zat cairan untuk menampung / mewadahi air, kita tidak mungkin menggunakan wadah lainnya. Kita tidak mungkin menggunakan kardus untuk mewadahi air bukan ? Karena kardus digunakan untuk mewadahi zat padat. Jadi sama halnya dengan tipe data, apabila kita ingin menampung/menyimpang sebuah input huruf, kita tidak bisa menyimpannya dalam bentuk tipe data angka / integer, karena tipe data integer / angka hanya di desain khusus untuk menampung / mewadahi inputan berupa angka saja.
Setelah kita memahami apa itu tipe data seperti yang dijelaskan di atas, kita bisa memulai untuk mengetahui apa saja tipe data yang ada, khususnya dalam bahasa pemrograman Java.
Java mempunyai 11 macam tipe data yang terdiri atas tipe data sederhana dan referensi / komposit. Tipe sederhana meliputi byte, short, int, long, char, float, double dan boolean yang terbagi menjadi 3 tipe. Sedangkan tipe data referensi meliputi class,array dan interface.
A. Tipe Data Sederhana
- Integer (Bilangan Bulat)
- Tipe data yang masuk menjadi bagian ini adalah byte, short, int dan long. Semua tipe data ini bersifat
- Byte
- Short
- Int
- 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.
- Float
- Double
3. 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. 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.
4. Boolean
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.
B. Tipe Data Referensi
1. 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.
2. Array
Tipe data ini memiliki kemampuan untuk menggunakan satu variabel
yang dapat menyimpan sebuah data list dan kemudian memanipulasinya
dengan lebih efektif.
Sebuah array akan menyimpan beberapa item data yang memiliki tipe
data sama didalam sebuah blok memori yang berdekatan yang kemudian
dibagai menjadi beberapa slot.
3. Interface
Interface merupakan sekumpulan method yang hanya memuat deklarasi
dan struktur method, tanpa detail implementasinya. Sedangkan detail dari
method tersebut berada pada class yang mengimplementasikan interface
tersebut. Interface digunakan bila Anda ingin mengaplikasikan suatu
method yang spesifik, yang tidak diperoleh dari proses inheritance yang
lebih terbatas. Tipe data yang boleh pada interface hanya tipe data
konstan.
Itu kira-kira macam-macam tipe data yang digunakan dalam bahasa
pemrograman Java. Semoga dengan artikel ini kita bisa lebih menguasai
tentang penggunaan tipe data dalam membuat program dengan menggunakan
bahasa pemrograman Java. Sampai jumpa.
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
dalam kasus beberapa operator yang dipakai bersama-sama dalam satu
pernyataan.
Operator Aritmatika
Berikut ini adalah dasar operator aritmatika yang dapat digunakan untuk membuat suatu program Java,
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
|
Contoh Operator Aritmatika :
public class OperasiAritmatika |
{ |
public static void main(String args[]) |
{ |
short x = 6; |
int y = 4; |
float a = 12.5f; |
float b = 7f; |
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)); |
} |
} |
Operator Relasi Pada java
Operator Relasi membandingkan dua nilai dan menentukan keterhubungan diantara nilainilai tersebut. Hasil keluarannya berupa nilai boolean yaitu true atau false.
contoh
|
Nama
|
Hasil
|
a == b
|
sama dengan benar
|
Jika a 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 jikaa lebih besar atau sama dengan b
|
Contoh Operator Relasi :
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); |
} |
} |
Operator Tambahan pada Java
Contoh Program
public class IncrementDecrement |
{ |
public static void main(String args[]) |
{ |
int i = 1; |
System.out.println("i : " + i ); |
// Pre-increment |
System.out.println("++i : " + ++i ); |
// Post-increment |
System.out.println("i++ : " + i++ ); |
System.out.println("i : " + i ); |
// Pre-decrement |
System.out.println("--i : " + --i ); |
// Post-decrement |
System.out.println("i-- : " + i-- ); |
System.out.println("i : " + i ); |
} |
} |
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
|
X
OR |
benar jika a atau b benar tetapi tidak keduanya
|
Contoh Source Code Program Operator Logika:
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); |
} |
} |
Operator Perbandingan/Kondisi
Operator perbandingan ini digunakan pada struktur kontrol program, seperti if, elseif, di mana dilakukan perbandingan antar dua nilai.Source Code Contoh Program Operator Aritmatika:
public class aritmatikaDemo |
{ |
public static void main(String[] args) |
{ |
//sedikit angka |
int i = 37; |
int j = 42; |
double x = 27.475; |
double y = 7.22; |
System.out.println("Variable values..."); |
System.out.println(" i = " + i); |
System.out.println(" j = " + j); |
System.out.println(" x = " + x); |
System.out.println(" y = " + y); //penjumlahan angka |
System.out.println("Adding..."); |
System.out.println(" i + j = " + (i + j)); |
System.out.println(" x + y = " + (x + y)); |
//pengurangan angka |
System.out.println("Subtracting..."); |
System.out.println(" i - j = " + (i - j)); |
System.out.println(" x - y = " + (x - y)); |
//perkalian angka |
System.out.println("Multiplying..."); |
System.out.println(" i * j = " + (i * j)); |
System.out.println(" x * y = " + (x * y)); |
//pembagian angka |
System.out.println("Dividing..."); |
System.out.println(" i / j = " + (i / j)); |
System.out.println(" x / y = " + (x / y)); |
//menghitung hasil modulus dari pembagian |
System.out.println("Computing the remainder..."); |
System.out.println(" i % j = " + (i % j)); |
System.out.println(" x % y = " + (x % y)); |
//tipe penggabungan |
System.out.println("Mixing tipes..."); |
System.out.println(" j + y = " + (j + y)); |
System.out.println(" i * x = " + (i * x)); |
} |
} |
Berikut ini adalah output program,
Variable values... |
i = 37 |
j = 42 |
x = 27.475 |
y = 7.22 |
i + j = 79 |
Adding... |
x + y = 34.695 |
Subtracting... |
i - j = -5 |
x - y = 20.255 |
Multiplying... |
i * j = 1554 |
x * y = 198.37 |
Dividing... |
i / j = 0 |
x / y = 3.8054 |
Computing the remainder... |
i % j = 37 |
x % y = 5.815 |
Mixing tipes... |
j + y = 49.22 |
i * x = 1016.58 |
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.
Contoh source code yang menggunakan logika dan boolean AND,
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); |
} |
} |
The output of the program is,
0
10
false
0
11
false
Catatan,
bahwa j++ pada baris yang mengandung operator && tidak
dievaluasi sejakpernyataan pertama (i>10) yaitu telah bernilai sama
dengan false.Contoh source code yang menggunakan operator logika dan boolean OR,
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); |
} |
} |
Hasil keluaran dari program ini adalah,
0
10
true
0
11
true
Catatan,
bahwa j++ pada baris yang terdiri atas operator || tidak dievaluasi
sejak pernyataan pertama (i<10) yaitu telah bernilai sama dengan
true.Contoh source code yang menggunakan operator logika exclusive OR,
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); |
} |
} |
Hasil keluaran program tersebut adalah,
false
true
false
true
Contoh source code yang menggunakan operator logika NOT,
public class TestNOT |
{ |
public static void main( String[] args ){ |
boolean val1 = true; |
boolean val2 = false; |
System.out.println(!val1); |
System.out.println(!val2); |
} |
} |
Hasil keluaran program adalah sebagai berikut,
false
true
Operator Kondisi(?:)
Operator kondisi ?: adalah operator ternary. Berarti bahwa operator ini membawa tiga argumen yang membentuk suatu ekspresi bersyarat. Struktur pernyataan yang menggunakan operator kondisi adalah,
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 );
}
}
|
Hasil keluaran dari program ini akan menjadi,
Passed
Berikut ini adalah program lain yang menggunakan operator ?: ,class ConditionalOperator { public static void main( String[] args ){ int score = 0; char answer = 'a'; score = (answer == 'a') ? 10 : 0; System.out.println("Score = " + score ); }
}
|
Hasil keluaran program adalah,
Score = 10