Saya baru-baru ini membaca tutorial Java 300 Gao Qi, dan terdapat satu baris kod di dalamnya yang dijelaskan secara ringkas oleh Teacher Gao, tetapi setelah diperiksa dengan lebih dekat, saya merasakan saya tidak memahami mata pengetahuan yang terkandung di dalamnya :
public class Test063 {
public static void main(String[] args){
Integer i = Integer.parseInt("234");
System.out.println(i);
}
}
Ayat kedua Interger.parseInt("234") Saya menyemak kod sumber,
Adalah dinyatakan dengan jelas di atas bahawa kaedah parseInt mengembalikan nilai jenis int, tetapi bagaimanakah ia boleh diberikan terus kepada objek Integer?
Saya melakukan eksperimen lain
Integer a = 1;//报错
Integer b = Integer.parseInt("1");//编译通过
Hasilnya membuat saya sangat keliru, mengapa ini berlaku?
Pemula, tolong bantu saya menyelesaikan keraguan saya.
Saya baru kepada anda, versi JDK yang anda ada? t tahu tentang versi sebelumnya Apakah batasan pada autoboxing. Mengapa anda tidak cuba menaik taraf?
Selepas JDK 1.5, terdapat ciri pembungkusan automatik dan pembongkaran automatik, yang secara automatik akan menukar jenis data primitif ini dan jenis objeknya:
https://docs.oracle.com/javas...
Selepas JDK1.5, tinju automatik dan unboxing boleh dilakukan
Kod guru ialah proses tinju automatik, dan Integer ialah kelas pembungkusan int Versi JDK anda sepatutnya lama.