1. 程式人生 > >Java學習筆記 03

Java學習筆記 03

基本資料型別的包裝類:
java為基本資料型別提供了對應的類,這些類稱為包裝類。
Byte類(byte),Short類(short),Integer類(int),
Long類(long),Float類(float),Double類(double),
Character類(char),Boolean類(Boolean)
為什麼使用包裝類:
1、包裝類中使用了一些很實用的方法和常亮。例如:
Byte.MIN_VALUE是Byte類中的一個常量,存放了byte資料型別的最小值。
Byte類中可以將字串轉成位元組,十進位制轉換為二進位制等其他進位制的數。
2、包裝類在集合中用來定義集合元素的型別。
包裝類的常用方法和常量:
1、Integer.MIN_VALUE:int型別的最小值-2^31;
2、Integer.MAX_VALUE:int型別的最大值2^31-1;
3、int Integer.parseInt(String sInteger);
作用:將字串型別的整數轉換為int型別的資料;
4、String Integer.toBinaryString(int value);
作用:將十進位制數轉換為二進位制,返回結果String型別。
5、String Integer.toHexString(int value);
作用:將十進位制數轉換為十六進位制,返回結果String型別。
二進位制補碼:1、計算機系統的內部以二進位制形式儲存資料。
2、java程式中輸入的十進位制資料會被自動轉換為二進位制,java內部也以二進位制進行數值運算,但返回的結果是十進位制補碼規則:1、在計算機系統中,數值一律用二進位制的補碼來儲存資料。2、二進位制最高位地符號位,0表示正數,1表示負數。3、正數的值是其本身,負數的值是最高位(符號位)不變,其他位逐位取反,再加1。例如:(1101)2
逐位取反(0010)再加一(0011)------(-3)
4、兩數相加,若最高位(符號位)有進位,則進位被捨棄。
例如:4位二進位制補碼中,5-3=2
0101(5)
  +1101(-3)
                                  ————————————
                                    0010(2) 
為什麼使用補碼:1、可以將符號位域其他位統一處理。2、最高位不在表示數值,而是作為符號位,正好將數值折半:即一半是0至正數,一半是負數。
(1)4位二進位制數共有16個數,用補碼錶示,一半是0~~7,一半是-1~~-8。
(2)8位二進位制數共有256個數,用補碼錶示,一半是0~~127,一半是-1~~-128.3、減法也可按加法來處理。補碼運算的特徵:1、計算機中正數與負數的關係是取反加一。
0011(3)1101(-3)
2、補碼運算是封閉的:運算結果保留在補碼範圍之內,超範圍就會溢位。
例如:四位二進位制的補碼中,5+4=-7
3、4位二進位制補碼最多可以表示2^4(16)個數,取值-8~~7。4、8位二進位制補碼最多可以表示2^8(256)個數,取值-128~127。5、16位2^16(65536),取值-32768~32767.6、32位2^32個數,取值-2^31~2^31-1。補碼運算的原理:
           正數+負數=模。 (4位二進位制的模式2^4=16)
在4位二進位制中 ,7+(-7)=16
所以得出結論,負數=模-正數,這就是逐位取反加一的原因。