Integer 基本數據類型int 的包裝類
Integer 類型的對象包含一個 int 類型的字段
屬性簡介
值爲 2^31-1 的常量,它表示 int 類型可以表示的最大值 |
@Native public static final int MAX_VALUE = 0x7fffffff; |
值爲 -2^31 的常量,它表示 int 類型可以表示的最小值 |
@Native public static final int MIN_VALUE = 0x80000000; |
用來以二進制補碼形式表示 int 值的比特位數 |
@Native public static final int SIZE = 32; |
二進制補碼形式表示 int 值的字節數 |
public static final int BYTES = SIZE / Byte.SIZE; |
表示基本類型 int 的 Class 實例 |
public static final Class<Integer> TYPE = (Class<Integer>) Class.getPrimitiveClass("int"); |
構造方法
構造方法都是新建立對象,分配新的空間
字符串形式構造,默認以十進制的字符串形式解析
包裝類 使用對應的基本數據類型int 構造 |
|
包裝類
使用對應的基本數據類型int的字符串String形式構造
|
|
經常使用方法
比較
static int compare(int x, int y) |
靜態方法
0 x == y;
-1 x < y;
1 x > y
|
int compareTo(Integer anotherInteger)
|
實例方法 兩個對象進行比較 ,實際比較兩個對象的value值 根本調用經過static int compare(int x, int y)
|
static int compareUnsigned(int x, int y) |
靜態方法 兩個基本類型int 當作無符號數進行比較 經過+MIN_VALUE進行轉換 根本是調用static int compare(int x, int y) |
parseXXX系列
字符串解析 爲 基本類型,
不須要對象,因此都是靜態方法
static int parseInt(String s, int radix) |
靜態方法 使用第二個參數指定的基數(進制),將字符串參數解析爲有符號的整數 除了第一個字符能夠是用來表示負值的 ASCII 減號 '-' ('\u002D’),加號'+' ('\u002B') 外 字符串中的字符必須都是指定基數的數字 |
static int parseInt(String s) |
靜態方法 static int parseInt(String s, int radix) 的十進制簡化形式
|
static int parseUnsignedInt(String s, int radix) |
靜態方法
使用第二個參數指定的基數(進制),將字符串參數解析爲無符號的整數
除了第一個字符能夠是用來表示正值的 ASCII 加號 '+' ('\u002B’)外
字符串中的字符必須都是指定基數的數字
|
static int parseUnsignedInt(String s) |
靜態方法 static int parseUnsignedInt(String s, int radix) 的十進制簡化形式 |
valueOf系列
把基本基本類型 包裝爲對象
用來建立得到對象,因此無需對象,全都是靜態方法
VaueOf系列都有對應的緩存區, 緩存區範圍內對象爲同一個
緩衝區爲靜態內部類中的數組
緩衝範圍爲 -128~127
decode
接受經過如下語法給出的十進制、十六進制和八進制數字
Sign是可選的 再日後就是指定基數的字符序列的正值,不能是負數,想要設置負數請僅僅使用符號位 也就是+-1 --1這種確定不行
|
Sign DecimalNumeral
Sign 0x HexDigits
Sign 0X HexDigits
Sign # HexDigits
Sign 0 OctalDigits
Sign:
-
+
|
XXXValue系列
獲取對象的某種基本類型的值
須要獲取對象的因此必然所有都是實例方法
強制類型轉換的形式,將內部的int值轉換爲指定的類型
toUnsignedXXX 系列
無符號相關的轉換
static long toUnsignedLong(int x) |
靜態方法 給定參數int轉換爲無符號的long 無符號轉換爲long時,高32位爲擴充爲0,也就是零位擴展 低32位同參數 int 所以,0和int正數 與對應的long的值相同 負數等於參數int+232
|
static String toUnsignedString(int i, int radix) |
靜態方法
在第二個參數指定的基數中,返回第一個參數的字符串表示的無符號整數值
若是基數不在Character.MIN_RADIX 和 Character.MAX_RADIX的範圍內, 默認基數爲10
基數和表示數字的字符的用法和表現和toString中同樣
|
static String toUnsignedString(int i) |
靜態方法 toUnsignedString(int, int) 十進制的簡化形式 同toUnsignedString(int, 10) |
toString toXXXString 系列
根本都是爲了轉換爲字符串形式
static String toString(int i, int radix) |
靜態方法 根據指定基數,int 返回一個String 若是基數小於 Character.MIN_RADIX 或者大於 Character.MAX_RADIX,默認設置爲基數 10 若是是負數 第一個符號位負號 '-' ('\u002D'),若是不是負數,將不會有符號 剩下的字符表示第一個參數的大小 若是大小是0 由字符 '0' ('\u0030') 表示,不然用來表示數值的第一個字符不會是0
用如下 ASCII 字符做爲數字:
0123456789abcdefghijklmnopqrstuvwxyz
其範圍是從 '\u0030' 到 '\u0039' 和從 '\u0061' 到 '\u007A'
若是 radix 爲 N, 則按照所示順序,使用這些字符中的前 N 個做爲其數字
所以,十六進制(基數爲 16)的數字是 0123456789abcdef
|
static String toString(int i) |
靜態方法 toString(int i, int radix) 的十進制簡化形式 同toString(int i, 10) |
String toString() |
實例方法 等同於把對象的value直接調用 toString(int i)
|
static String toBinaryString(int i) |
靜態方法 以二進制(基數 2)無符號整數形式返回一個整數參數的字符串表示形式
|
static String toOctalString(int i) |
靜態方法 以八進制(基數 8)無符號整數形式返回一個整數參數的字符串表示形式
|
static String toHexString(int i) |
靜態方法 以十六進制(基數 16)無符號整數形式返回一個整數參數的字符串表示形式 |
內部有一個私有方法用於轉換爲無符號形式
equals
Integer重寫了equals方法 比較的是兩個Integer對象中內部的 int value值 |
|
hashCode
static int hashCode(int value) |
靜態方法 返回某個int 數值的hashcode
|
int hashCode() |
實例方法 獲取某個Integer對象的hashcode 等同於static int hashCode(int value) 調用 內部value值 |
getXXX系列
獲取系統屬性的數值
static Integer getInteger(String nm, Integer val) |
肯定具備指定名稱的系統屬性的整數值
第一個參數被視爲系統屬性的名稱 經過 System.getProperty(java.lang.String) 方法能夠訪問系統屬性
第二個參數是默認值 若是未具備指定名稱的屬性,或者屬性的數字格式不正確,或者指定名稱爲空或 null 則返回一個表示第二個參數的值的 Integer 對象
|
static Integer getInteger(String nm, int val) |
getInteger(String nm, Integer val) 的便捷轉換形式
|
static Integer getInteger(String nm) |
getInteger(String nm, int val)省略第二個參數的簡化形式版本 |
其餘方法
最高1 位 最低1 位 前置零個數 和 後置0個數 |
highestOneBit(int) / lowestOneBit(int) numberOfLeadingZeros(int) / numberOfTrailingZeros(int) |
位數 循環左移/循環右移 按位翻轉 按照字節翻轉 |
bitCount(int) 返回二進制補碼錶示形式的 1 位的數量,不是所有位數
rotateLeft(int, int) / rotateRight(int, int)
reverse(int) / reverseBytes(int)
|
取整 求餘 |
divideUnsigned(int, int)
remainderUnsigned(int, int)
|
Integer還提供了上面幾個方法,在開篇中已經描述 Long也有提供
語義一致
static int signum(int i) |
靜態方法 返回指定 int 值的符號函數 (若是指定值爲負,則返回 -1;若是指定值爲零,則返回 0;若是指定的值爲正,則返回 1 )
|
static int sum(int a, int b) |
靜態方法 求和
|
static int max(int a, int b) |
靜態方法 最大值
|
static int min(int a, int b) |
靜態方法 最小值 |