Satu hal penting dalam memahami Bahasa Pemrograman Java adalah masalah tipe data. Dalam pembuatan program skala besar ataupun dalam Kontes Pemrograman sering sekali menuntut ketelitian untuk memilih tipe data sehingga output yang dihasilkan sesuai dengan yang diinginkan, tidak terlalu boros, tidak juga melebihi ambang batas tipe data yang bersangkutan. Nah, tiap tipe data memiliki range of value atau jangkauan nilai. Ini akan dijelaskan lebih lanjut lagi.
Tipe data ini adalah tipe data dasar pada Java. Ada 8 tipe data dasar yang digunakan pada Java dengan spesifikasi sebagai berikut:
Mengapa diatas tidak disertakan tipe data String? Secara teknis String yang ada pada Java bukanlah tipe data primitif melainkan sebuah Tipe Data Objek. Alokasi memori untuk String tidaklah tetap seperti pada tipe data primitif diatas, artinya String secara khusus tidak memiliki batasan dalam jumlah karakter yang ditampung.
Seperti pada kasus dibawah
Saat mendeklarasi variabel dengan suatu tipe data, maka tanpa kita inisialisasi secara otomatis variabel sudah memiliki nilai. Dibawah adalah nilai awal dari setiap tipe data, termasuk String (mengenai deklarasi dan inisialisasi akan dijelaskan dibawah):
Tipe data primitif
Tipe data ini adalah tipe data dasar pada Java. Ada 8 tipe data dasar yang digunakan pada Java dengan spesifikasi sebagai berikut:
Nama | Keterangan | Ukuran | Jangkauan Nilai |
---|---|---|---|
boolean | Tipe data yang hanya memiliki dua nilai: benar atau salah. | 1 Byte | true, false |
char | Menampung karakter tunggal yang termasuk dalam karakter Unicode (termasuk di dalamnya ASCII) | 2 Byte | lihat tabel Unicode atau ASCII |
byte | 2 Byte | 1 Byte | [-128 , 128] |
short | Short Integer, bilangan bulat dengan tampungan sedikit | 2 Byte | [-215, 215-1] |
int | Integer, menampung bilangan bulat | 4 Byte | [-232 , 232-1] |
long | Long Integer, menampung bilangan bulat dengan tampungan dua kali lebih besar dibandingkan int | 8 Byte | [-263 , 263-1] |
float | Bilangan Desimal | 4 Byte | [-3.4 x 10 +38 , 1.4 x 10 -45] |
double | Bilangan Desimal dengan tingkat ketelitian lebih | 8 Byte | [-1.7 x 10 +308 , 4.9 x 10 -324] |
Mengapa diatas tidak disertakan tipe data String? Secara teknis String yang ada pada Java bukanlah tipe data primitif melainkan sebuah Tipe Data Objek. Alokasi memori untuk String tidaklah tetap seperti pada tipe data primitif diatas, artinya String secara khusus tidak memiliki batasan dalam jumlah karakter yang ditampung.
Apa yang terjadi apabila hasi dari pengoperasian nilai berada diluar dari jangkauan tipe data primitif?
Seperti pada kasus dibawah
int mynumber = 2147483647 + 1;
System.out.println(mynumber);
output-2147483648
Mengapa output yang ditampilkan seperti demikian? Karena hasil pengoperasian nilai diatas melebihi batas dari tipe data tersebut (int), yaitu 215-1 atau tepatnya 2147483647. Saat melewati batas itulah hasil kembali lagi ke nilai bawahnya yaitu 215 atau -2147483648.
Nilai awal (default values)
Tipe Data | Nilai |
---|---|
boolean | false |
char | '\u0000' |
byte | 0 |
short | 0 |
int | 0 |
long | 0 |
float | 0.0f |
double | 0.0d |
[tambahan] Deklarasi dan Inisialisasi
Perlu untuk dikerahui:- Deklarasi adalah saat kita menciptakan variabel lalu sistem mengalokasikan memori untuk variabel tersebut. Menuliskan "int test;" itu adalah deklarasi.
- Inisialisasi adalah saat kita memberi nilai/harga awal pada variabel yang bersangkutan. Semisal, setelah kita deklarasi variabel, lalu kita memberi nilai variabel tersebut, itu dikatakan deklarasi sekaligus inisialisasi.
- Sebelum variabel yang kita tuliskan diproses, variabel tersebut harus sudah dideklarasikan.
No comments:
Post a Comment