Anda di halaman 1dari 24

BY : ALFINA, ST., MT.

ALFINA, ST., MT. 1


 Casting adalah perubahan type data ke type data
lainnya dengan memperhatikan ukuran kapasitas di
setiap type data.
 Type Casting merupakan metode atau cara yang
digunakan untuk mengubah tipe data pada variabel.
 Seringkali dalam pembuatan program diperlukan
langkah untuk mengubah suatu tipe data menjadi tipe
data yang lainnya.
 Nah, proses yang digunakan untuk mengubah suatu
tipe data ke tipe data yang lain itulah yang disebut
dengan istilah Type Casting atau pengarah tipe.

ALFINA, ST., MT. 2


 Bentuk dari type casting adalah sebagai berikut :
(tipe-data) data
 Sebagai contohnya, terdapat pendeklarasian sebagai berikut :
int i = 65;
char huruf;
 Supaya nilai i bisa disimpan ke variabel huruf, maka nilai i perlu
diubah menjadi tipe char dengan cara sebagai berikut :
huruf = (char) i;
 Agar tidak ada nilai yang hilang, tipe tujuan harus memiliki ukuran
yang lebih besar atau minimal sama dengan ukuran tipe sumber.

ALFINA, ST., MT. 3


 Dibawah ini memperlihatkan casting tipe
atau pengarah tipe yang dapat dilakukan
dengan tanpa menghilangkan nilai
Tipe Sumber Tipe Tujuan

byte short, char, int, long, float, double

short int, long, float, double

char int, long, float, double

int long, float, double

long float, double

float double

ALFINA, ST., MT. 4


 Didalam Java, Type Casting dibedakan
menjadi dua tipe :

1. Widening Casting (Konversi Otomatis)


2. Narrowing Casting (Konversi Tipe Data yang
Tidak Kompatibel)

ALFINA, ST., MT. 5


ALFINA, ST., MT. 6
 Contoh Programnya :
public class Test1 {
public static void main(String[] args) {
int i = 100;
long l = i;
float f = l;
System.out.println("Int bernilai "+i);
System.out.println("Long bernilai "+l);
System.out.println("Float bernilai "+f);
}
}

Hasilnya :
Int bernilai 100
Long bernilai 100
Float bernilai 100.0

ALFINA, ST., MT. 7


ALFINA, ST., MT. 8
 Contoh Programnya :
public class Test2 {
public static void main(String[] args) {
double d = 100.04;
long l = (long)d;
int i = (int)l;
System.out.println("Double bernilai "+d);
System.out.println("Long bernilai "+l);
System.out.println("Int bernilai "+i);
}
}
Hasilnya :

Double bernilai 100.04


Long bernilai 100
Int bernilai 100

ALFINA, ST., MT. 9


ALFINA, ST., MT. 10
 Hasilnya :

Typecasting dari tipe int ke tipe byte


int: 257
byte: 1
Typecasting dari tipe double ke tipe int
double: 274.5678
int: 274
Typecasting dari tipe double ke tipe byte
double: 274.5678
byte: 18

ALFINA, ST., MT. 11


ALFINA, ST., MT. 12
 Hitung Luas Persegi panjang
 Hitung Luas Trapesium
 Hitung Luas jajaran genjang
 Hitung Luas bujur sangkar
 Hitung Luas Lingkaran

ALFINA, ST., MT. 13


ALFINA, ST., MT. 14
ALFINA, ST., MT. 15
 Beberapa casting disebut dengan konversi. Proses
konversi disarankan dari ukuran type data kecil ke
besar. Alasannya karena jika konversi dilakukan dari
ukuran besar ke kecil, ada kemungkinan akan
menghilangkan beberapa data karena kapasitas yang
tidak mencukupi.
 Jika di konversi contohnya adalah dari integer ke float,
integer ke long, float ke double, dan seterusnya, maka
dalam Casting yang terjadi adalah dari integer ke
String, String ke integer, float ke String, String ke float
dan masih banyak lagi sesuai dengan ketentuan yang
ada di java.
ALFINA, ST., MT. 16
 Konversi adalah pemberian nilai kepada
variabel yang berbeda tipe datanya. Dalam
konversi melibatkan widening conversation
yaitu tipe data tujuan harus mempunyai
range yang lebih besar daripada tipe data
aslinya. Misalnya dari byte ke short, short ke
long, atau int ke double. Konversi tidak dapat
dilakukan pada tipe data boolean.

ALFINA, ST., MT. 17


Kalau untuk Konversi mungkin tidak ada masalah, karena tidak ada coding tertentu,
tapi hal ini lain dengan Casting. Dalam Casting, ada coding yang harus diperhatikan.
Casting adalah saat programmer melakukan konversi antar tipe yang tipenya tidak
kompatibel, tidak dapat mengonversi secara otomatis maka dibutuhkan
casting. Casting juga melibatkan narrowing conversation yaitu bila tipe tujuan lebih
kecil dari tujuan asal maka akan ada informasi yang hilang.

ALFINA, ST., MT. 18


ALFINA, ST., MT. 19
HASILNYA :

ALFINA, ST., MT. 20


ALFINA, ST., MT. 21
ALFINA, ST., MT. 22
ALFINA, ST., MT. 23
 Abdul Kadir, 2005. Dasar Pemrograman Java
2. Yogyakarta : Penerbit Andi.
 Suarga, 2009. Dasar Pemrograman Komputer
Dalam Bahasa Java. Yogyakarta : Penerbit
Andi.
 www.ilmukomputer.org
 Dan beberapa sumber lain dari internet.

Anda mungkin juga menyukai