การหล่อแบบจาวา
การหล่อแบบจาวา
การหล่อแบบคือเมื่อคุณกำหนดค่าของประเภทข้อมูลพื้นฐานหนึ่งให้กับอีกประเภทหนึ่ง
ใน Java การแคสต์มีสองประเภท:
- Widening Casting (อัตโนมัติ) - แปลงประเภทที่เล็กกว่าเป็นขนาดที่ใหญ่กว่า
byte
->short
->char
->int
->long
->float
->double
- การหล่อแบบแคบ (ด้วยตนเอง) - การแปลงประเภทที่ใหญ่กว่าเป็นประเภทที่เล็กกว่า
double
->float
->long
->int
->char
->short
->byte
ขยับขยายหล่อ
การหล่อแบบขยายจะกระทำโดยอัตโนมัติเมื่อส่งประเภทขนาดที่เล็กกว่าไปยังประเภทที่ใหญ่กว่า:
ตัวอย่าง
public class Main {
public static void main(String[] args) {
int myInt = 9;
double myDouble = myInt; // Automatic casting: int to double
System.out.println(myInt); // Outputs 9
System.out.println(myDouble); // Outputs 9.0
}
}
การหล่อแบบแคบ
การหล่อแบบแคบจะต้องดำเนินการด้วยตนเองโดยวางประเภทในวงเล็บไว้ข้างหน้าค่า:
ตัวอย่าง
public class Main {
public static void main(String[] args) {
double myDouble = 9.78d;
int myInt = (int) myDouble; // Manual casting: double to int
System.out.println(myDouble); // Outputs 9.78
System.out.println(myInt); // Outputs 9
}
}