Di java, kita bisa melakukan konversi tipe data number(angka), ada dua ketentuan yaitu:
- Widening casting: untuk konversi dari tipe data yang kecil ke yang lebih besar. Missal dari byte ke short, short ke int, int ke long, long ke float, float ke double. Bagaimana caranya? Kita tidak perlu menambahkan apapun, karena java akan melakukannya secar otomatis.
- Narrowing casting: untuk konversi dari tipe data yang lebih besar ke yang lebih kecil. seperti dari double ke float, float ke long, long ke int, int ke short, short ke byte. Bagaimana caranya? Berikut contoh kodingnya:
byte iniByte = 100; short iniShort = (short) iniByte;
Supaya lebih jelas, kita buat kelas KonversiTipeDataNumber lalu ketikkan sintaks di bawah ini:
public class KonversiTipeDataNumber { public static void main(String[] args) { //widening casting int iniInt = 3445; //koversi otomatis ke tipe data lebih besar long iniLong = iniInt; //Narrowing casting short iniShort = 123;//ingat, nilai dari iniShort tidak boleh di luar range tipe data byte //konversi ke byte byte iniByte = (byte) iniShort; System.out.println(iniLong); System.out.println(iniByte); } }
Kita run maka hasilnya adalah:
3445 123
Perhatikan, untuk kasus narrowing casting: nilai dari tipe data yang dikonversi harus pada rentang nilai pada tipe data tujuan konversi, jika tidak maka hasil konversinya tidak benar.
PREVIOUS: Kode Literals dan Underscore
NEXT: Tipe Data Characters