Các lớp trình bao bọc Java
Các lớp trình bao bọc Java
Các lớp trình bao bọc cung cấp một cách để sử dụng các kiểu dữ liệu nguyên thủy ( int
, boolean
, v.v.) làm đối tượng.
Bảng bên dưới hiển thị kiểu nguyên thủy và lớp trình bao bọc tương đương:
Primitive Data Type | Wrapper Class |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
char | Character |
Đôi khi bạn phải sử dụng các lớp trình bao bọc, ví dụ như khi làm việc với các đối tượng Bộ sưu tập, chẳng hạn như ArrayList
, trong đó các kiểu nguyên thủy không thể được sử dụng (danh sách chỉ có thể lưu trữ các đối tượng):
Ví dụ
ArrayList<int> myNumbers = new ArrayList<int>(); // Invalid
ArrayList<Integer> myNumbers = new ArrayList<Integer>(); // Valid
Tạo đối tượng bao bọc
Để tạo một đối tượng bao bọc, hãy sử dụng lớp bao bọc thay vì kiểu nguyên thủy. Để có được giá trị, bạn chỉ cần in đối tượng:
Ví dụ
public class Main { public static void main(String[] args) { Integer myInt = 5; Double myDouble = 5.99; Character myChar = 'A'; System.out.println(myInt); System.out.println(myDouble); System.out.println(myChar); } }
Vì hiện tại bạn đang làm việc với các đối tượng nên bạn có thể sử dụng một số phương pháp nhất định để lấy thông tin về đối tượng cụ thể.
Ví dụ: các phương thức sau được sử dụng để lấy giá trị được liên kết với đối tượng bao bọc tương ứng: intValue()
, byteValue()
, shortValue()
, longValue()
floatValue()
doubleValue()
() , charValue()
, booleanValue()
.
Ví dụ này sẽ cho ra kết quả tương tự như ví dụ trên:
Ví dụ
public class Main { public static void main(String[] args) { Integer myInt = 5; Double myDouble = 5.99; Character myChar = 'A'; System.out.println(myInt.intValue()); System.out.println(myDouble.doubleValue()); System.out.println(myChar.charValue()); } }
Một phương thức hữu ích khác là phương thức toString()
, được sử dụng để chuyển đổi các đối tượng bao bọc thành chuỗi.
Trong ví dụ sau, chúng ta chuyển đổi một Integer
thành String
và sử dụng phương thức length()
của lớp String
để xuất ra độ dài của "chuỗi":
Ví dụ
public class Main { public static void main(String[] args) { Integer myInt = 100; String myString = myInt.toString(); System.out.println(myString.length()); } }