自動拆裝箱

2022-09-07 23:39:32 字數 3275 閱讀 4641

1.基本資料型別對應的包的好處是它是個類可以new物件調方法

2.基本資料型別包裝類的特點:用於基本資料型別和字串進行轉換;且每個方法都是自己包裝類的方法,因為返回值是static修飾的所以可以直接類名.呼叫;

3.字串轉基本資料型別的時候:字串必須是數值型不然不能進行轉換

4.基本資料型別轉字元:1:基本陣列類+"";2.string.valueof方法;3.呼叫包裝類的tostring方法:integer.tostring

5.自動拆裝箱:就是引用資料型別可以直接拿來運算,因為系統自動並隱藏了引用資料型別轉基本資料型別的過程;

基本資料型別可以直接賦值給引用資料型別,原因是系統自動將基本資料型別轉成了引用資料型別並隱藏了轉換過程

6.自動裝箱:基本資料型別轉成引用資料型別(int->integer)

自動拆箱:引用資料型別轉成基本資料型別(integer->int)

7.將string轉為int資料型別;string age="18";int a=integer.parseint(age);因為string轉int所以要int a來接;轉什麼資料型別就用相應的引用資料型別的方法來轉

8.基本資料型別轉字元型:1.int num=1;string num=num+"";因為加上""就是加上了乙個字元所以轉成了字元型

2.string的valueof()方法:string num=string.valueof(num);因為轉成string所以用string num來接

3.呼叫相應的包裝類的tostring方法:string str=integer.tostring(num);

9.基本資料型別轉成包裝類:int轉integer: integer num=new integer(1);這實際上就是有參構造; 字元轉integer: integer num=new integer("1")

通過包裝類.valueof()方法來**int轉integer: integer i=integer.valueof(1);string轉integer: integer i=integer.valueof("1");

包裝類轉基本資料型別:int i=i5.intvalue(); i5是前面轉的integer型別的變數

10.基本資料型別和引用資料型別的區別:int不能存null;integer可以存null;因為integer是個物件可以掉方法,而且物件的預設值是null;integer實際存的是位址

11.自動裝箱(int轉integer)拆箱(integer轉int);裝箱:int轉integer;拆箱:integer轉int;

12.自動裝箱:基本資料型別轉引用資料型別: integer i=1;自動裝箱就是直接賦值,實際上省略了integer i=new integer(1);這裡的1就是integer i=new integer(1);

13.自動拆箱:就是包裝型別轉成基本資料型別:int sum=i+2;這裡也是直接寫,實際上省略了:int sum=i.intvalue(1)+2; i=i.intvalue();

14.integer i=555;integer i2=555;system.out.println(i==i2)結果false;因為i是integet型別是物件,所以他們比較的是位址,所以位址肯定不一樣

system.out.println(i.equals(i2))結果true;因為這裡i用的是equals()方法比較的是內容所以i和i2的內容一樣都是555

integer n=127;integer n2=127;;system.out.println(n==n2)結果是true;因為127是byte型別的,byte有常量池;如果n和n2的數值一樣,那麼就不會生成乙個新的物件;直接把n的

值賦值給n2;也就是把n2的位址給n;那麼也就不會生成新的物件實際上n2就是n

15.system類不能手動new物件,因為構造方法被private修飾所以不能再建立物件;因為system類中都被static修飾所以直接類名.方法名呼叫就行

16.system的方法有:1.system.currenttimemillis(獲取毫秒值)2.system.exit():打斷虛擬機器執行,()裡面傳int型別的值,寫0是正常狀態停止執行

system.gc是系統垃圾**機制

17.陣列的賦值:int arr=;int arr2=;system.arraycopy(arr,0,arr2,0,3);system.arraycopr(源陣列,要複製的起始下標,目標陣列,目標陣列要複製的下標,複製的位數)

18.求絕對值:math.abs(-90.3); 向上取整(就是算12.9結果也是13):math.ceil(12.1)結果13; 向下取整(就算是12.9結果也是12):math.floor(12.1)結果是12

四捨五入:math.round(12.4)結果是12;math.round(12.9)結果是13;獲取兩個數的最大值:math.max(22,12)結果是22;獲取兩個數的最小值:math.min(22,12)結果是12

求次冪;就是2的10次方:math.pow(2,10);求0-1之間的隨機小數:math.random();

19.arrays的用法:int i=[1,2,3] int index=arrays.binarysearch(i,2)結果index=1;這個是查詢陣列中具體數值的下標;如果元素不存在那麼返回的是改元素應該所在的下標(負 的)-1減1;-1-1=-2;

20.陣列排序:arrays.sort(arr);就是給arr陣列進行排序,順序是由小到大

21.將陣列轉成字元進行輸出,效果相當於for遍歷:arrays.tostring(arr)

22.arrays就是運算元字的工具(搜尋和排序);如果指定的陣列是值是null;就會出現空指標異常錯誤

23.大資料運算:biginteger(integer型別的數值)和bigdecimal(double型別的數值);

biginteger的四則運算:biginteger n1=new biginteger("100000000000000");biginteger n2=new biginteger("200000000000000");

1、加法:n1.add(n2) 2、減法:n2.subtract(n1); 3.乘法:n1.multiply(n2); 4.除法:n2.divide(n1)

bigdecimal(可以解決計算失精度的問題)的四則運算:bigdecimal num1=new bigdecimal("0.09");bigdecimal num2=new bigdecimal("0.03");

1.加法:num1.add(num2) 2.減法:num2.subtract(num1) 3.乘法:num1.multiply(num2) 4.除法:num2.divide(num1)

自動拆裝箱

目的 簡化 書寫,封裝類可以提供對基本型別的基本操作,當使用集合框架時需要放入的是物件,不能放入基本型別資料 1.自動裝箱 integer i 3 實際會轉換為integer.valueof 3 2.自動拆箱 int j i 實際會轉換為 i.intvalue 3.自動拆裝箱易混 integer a...

自動拆裝箱

自動拆裝箱分為拆箱和裝箱。拆箱 把包裝類轉換為對應的基本資料型別 裝箱 把基本資料型別轉換為對應的包裝類 ps 基本資料型別對應的包裝類見 五 擴充套件所有的包裝類都有多個相同方法,其中有乙個為valueof 這個方法就是將基本資料型別轉換為對應的包裝類。同時有乙個類似的方法為?value 其中?代...

自動拆 裝箱

自動裝箱 如果乙個int型常量被傳遞到需要乙個integer物件的地方,那麼編譯器將在幕後插入乙個對integer構造方法的呼叫,這就叫做自動裝箱 1 integer i 12 自動拆箱 如果乙個integer物件被放到需要int型量的地方,則編譯器將在幕後插入乙個對intvalue方法的呼叫,這就...