|
Java中的8個基本類型都對應(yīng)一個包裝類 byte → Byte short → Short int → Integer long?→ Long float → Float double → Double char → Character boolean→ Boolean 每個包裝類中都有一個靜態(tài)的方法來將java的基本數(shù)據(jù)類型轉(zhuǎn)換為包裝類,這個靜態(tài)方法接受一個對應(yīng)的基本類型參數(shù)然后返回一個包裝類的引用: Java 1.5版本之后 增加了自動裝箱、拆箱機制,提供基本數(shù)據(jù)類型和包裝類型的相互轉(zhuǎn)換操作。 自動裝箱即自動將基本數(shù)據(jù)類型轉(zhuǎn)換成包裝類型: public class TestUtil {
public static void main(String[] args){
//JDK1.5之前 不可以自動裝箱
Integer i1 = new Integer(100);
Integer i2 = Integer.valueOf(100);
//1.5之后 可以自動裝箱
Integer i3 = 100;
自動拆箱即自動將包裝類型轉(zhuǎn)換成基本數(shù)據(jù)類型,與自動裝箱相反: public class TestUtil {
public static void main(String[] args){
//JDK1.5之前 不可以自動裝箱
Integer i1 = new Integer(100);
Integer i2 = Integer.valueOf(100);
//1.5之后 可以自動裝箱
Integer i3 = 100;
//自動拆箱
int i4 = i1;
//自動拆箱的原理 調(diào)用intValue
int i5 = i1.intValue();
System.out.println(i4);
System.out.println(i5);
}
}
輸出結(jié)果
100
100
public class TestUtil {
public static void main(String[] args){
//將數(shù)字字符串轉(zhuǎn)換為int類型數(shù)字
//將String直接轉(zhuǎn)換為int類型
int value1 = Integer.parseInt("123");
//先將String構(gòu)成一個Integer對象,然后拆分
int value2 = new Integer("123");
System.out.println(value1);
System.out.println(value2);
}
}
輸出結(jié)果:
123
123
筆試題 public class TestUtil {
public static void main(String[] args){
//將數(shù)字字符串轉(zhuǎn)換為int類型數(shù)字
Integer i1 = 10;//10自動包裝成Integer對象 不是常量區(qū)的10,而是存放在靜態(tài)元素區(qū)的10
Integer i2 = 10;//與i1同時指向靜態(tài)元素區(qū)的10
Integer i3 = new Integer(10);// 新new 的一個對象 10
Integer i4 = new Integer(10);//再new一個
System.out.println(i1 == i2);//== 比較變量里的內(nèi)容(地址)
System.out.println(i1 == i3);
System.out.println(i3 == i4);
System.out.println(i1.equals(i2));//重寫了 比值, 不是Object里的equals ,
System.out.println(i1.equals(i3));
System.out.println(i2.equals(i4));
}
}
輸出結(jié)果:
true
false
false
true
true
true
1.==與equals()區(qū)別 ? 來源:https://www./content-1-316151.html |
|
|