Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách tạo đối tượng wrapper trong JShell Java 9?

Mỗi kiểu nguyên thủy trong Java có lớp wrapper built-in tương ứng, các wrapper class này cũng immutable. Integer, Float, Double, Byte... là một vài wrapper class built-in. Lợi ích chính dùng wrapper: truy cập thông tin kiểu của kiểu nguyên thủy tương ứng, tính năng Auto-Boxing (kiểu nguyên thủy tự động thăng cấp thành object reference), và di chuyển dữ liệu kiểu nguyên thủy trong cấu trúc dữ liệu.

Có thể tạo instance của Wrapper Classes bằng toán tử new, cũng dùng phương thức valueOf() trong các kiểu như Integer để tạo wrapper object. Phương thức Integer.valueOf() tái sử dụng object Integer hiện có cùng giá trị trên heap. Nếu object cùng giá trị đã có trên heap, trả về tham chiếu object hiện có, ngược lại trả về tham chiếu Integer object mới tạo.

Đoạn mã dưới tạo wrapper object trong JShell.

Đoạn mã 1

jshell> Integer int1 = new Integer(10);
int1 ==> 10
jshell> Integer int2 = new Integer(10);
int2 ==> 10
jshell> Integer int3 = Integer.valueOf(10);
int3 ==> 10
jshell> Integer int4 = Integer.valueOf(10);
int4 ==> 10
jshell> int1 == int2;
$7 ==> true
jshell> int3 == int4;
$8 ==> true

Đoạn mã 2

jshell> Integer abc1 = Integer.valueOf(700);
abc1 ==> 700
jshell> Integer abc2 = 700;
abc2 ==> 700
jshell> Integer abc3 = 700;
abc3 ==> 700
jshell> abc2 == abc3
$4 ==> false
jshell> Integer.MAX_VALUE
$5 ==> 2147483647
jshell> Integer.MIN_VALUE
$6 ==> -2147483648
jshell> Integer.SIZE
$7 ==> 32
jshell> Integer.BYTES
$8 ==> 4