【Java】总结Integer类的API
基本信息
1.被定義為:public final class Integer
顯然,不能被繼承
2.extends Number
該類繼承了Number類
3.implements Comparable
實現了Comparable接口
4.是比較原始的類
since1.0
5.Integer類在對象中包裝基元類型int的值。Integer類型的對象包含類型為int的單個字段。
此外,這個類還提供了幾種方法,可以將int轉換為字符串,將字符串轉換為int,以及在使用int進行轉換時使用的其他常量和方法。
實施說明:“位旋轉”方法(如highestonebit和numberoftrailingzero)的實施基于Henry S.Warren,Jr.的Hacker’sDelight(Addison Wesley,2002)提供的資料。
6.這個類的運算都是以二進制形式進行的,所以會涉及到按位操作的內容和二進制原碼、反碼、補碼還有進制轉換等基礎內容,對初學者有些燒腦。。
類變量(靜態成員變量)——5個
static int BYTES:表示int的二進制形式
static int MAX_VALUE:表示int的上限:2^31 - 1
即2147483647
static int MIN_VALUE:表示int的下限:-2^31
即-2147483648
static int SIZE:表示二進制形式下int值的位數
即32
static Class TYPE:表示基元類型int的類實例
即int
方法:一共35種不同名方法
<1>靜態方法:
1.static int bitCount?(int i):返回指定int值的兩個補碼二進制表示形式中的1位數
3.static int compare?(int x,int y):比較兩個int的數值
5.static int compareUnsigned?(int x,int y):比較兩個int值(比較時忽略符號+/-)
6.static Integer decode?(String nm):將字符串解碼為整數
7.static int divideUnsigned?(int dividend,int divisor):返回將第一個參數除以第二個參數的無符號商,其中每個參數和結果都解釋為無符號值
11.static Integer getInteger?(String nm)
static Integer getInteger?(String nm,int val)
static Integer getInteger?(String nm, Integer val)
:將字符串轉化成整數值(確定具有指定名稱的系統屬性的整數值)
13.static int hashCode?(int value):返回int值的哈希代碼;與Integer.hashCode()兼容
14.static int highestOneBit?(int i):返回int的二進制最高位(最左邊的一位)對應的值
簡單的解釋一下這個方法:
測試語句:
輸出結果:
2 32 64可見,輸出的是二進制最高位對應的值即2^…
也可以這么理解吧:參數int剛好大于的2的冪次值
(說的不太好,卑微)
17.static int lowestOneBit?(int i):返回該int二進制形式中最低位的1所在的位對應的2的冪次
18.static int max?(int a,int b):通過調用math.max返回兩個int中的最大值
19.static int min?(int a,int b):通過調用math.max返回兩個int中的最小值
20.static int numberOfLeadingZeros?(int i):返回指定int值的兩個補碼二進制表示中最高順序(“leftmost”)前一位的零位數
21.static int numberOfTrailingZeros?(int i):返回指定int值的兩個補碼二進制表示形式中最低順序(“最右邊”)后一位的零位數
22.static int parseInt?(CharSequence s,int beginIndex,int endIndex,int radix):將charsequence參數解析為指定基數中的有符號int,從指定的beginindex開始,擴展到endindex-1
static int parseInt?(String s):將字符串參數解析為帶符號的十進制整數
static int parseInt?(String s,int radix):將字符串參數解析為第二個參數指定的半徑中的有符號整數
23.static int parseUnsignedInt?(CharSequence s,int beginIndex,int endIndex,int radix):將charsequence參數解析為指定基數中的無符號int,從指定的beginindex開始并擴展到endindex-1
static int parseUnsignedInt?(String s):將字符串參數解析為無符號的十進制整數
static int parseUnsignedInt?(String s,int radix):將字符串參數解析為第二個參數指定的半徑中的無符號整數
24.static int remainderUnsigned?(int dividend,int divisor):返回第一個參數除以第二個參數所得的無符號余數,其中每個參數和結果都解釋為無符號值
25.static int reverse?(int i):返回通過顛倒指定IntValue的二進制補碼表示中的位的順序獲得的值
26.static int reverseBytes?(int i):返回通過顛倒指定int值的兩個補碼表示中的字節順序獲得的值
27.static int rotateLeft?(int i,int distance):返回通過將指定int值的兩個補二進制表示形式向左旋轉指定位數而獲得的值
28.static int rotateRight?(int i,int distance):返回通過將指定int值的兩個補碼二進制表示形式向右旋轉指定位數而獲得的值
30.static int signum?(int i):返回指定int值的signum函數
31.static int sum?(int a,int b):根據+運算符將兩個整數相加
32.static String toBinaryString?(int i):返回以2為基的整數參數的字符串表示形式的帶符號整數
33.static String toHexString?(int i):以16為底返回整數參數的字符串表示形式,表示為帶符號整數
34.static String toOctalString?(int i):返回以8為基的整數參數的字符串表示形式的帶符號整數
36.static String toString?(int i):返回表示此整數值的字符串對象
static String toString?(int i,int radix)返回由第二個參數指定的Theradix中第一個參數的字符串表示形式
37.static long toUnsignedLong?(int x):通過無符號的轉換將參數轉換為long
38.static String toUnsignedString?(int i):將參數的字符串表示形式返回為無符號十進制數
static String toUnsignedString?(int i,int radix)將第一個參數的字符串表示形式返回為第二個參數指定的基數中的無符號整數值
測試代碼:
輸出:
22 429496727439.static Integer valueOf?(int i):返回表示指定int值的整數實例
static Integer valueOf?(String s):返回一個包含指定字符串值的整數對象
static Integer valueOf?(String s,int radix):返回一個整數對象,該對象在用第二個參數給定的基數進行分析時保留從指定字符串中提取的值
非靜態方法
2.byte byteValue():在收縮基元轉換之后,以字節的形式返回此Integer的值
4.int compareTo?(Integer anotherInteger):對兩個Integer實例進行數值比較
8.double doubleValue():在擴大基元轉換后,以double形式返回此Integer的值
9.boolean equals?(Object obj):將此對象與指定的對象進行比較
強調:比較的是hashCode()!!
10.float floatValue():在擴大基元轉換后,以float形式返回此Integer的值
12.int hashCode():返回此Integer的哈希代碼(hashCode)
有關hashCode,可以參考百度百科:https://baike.baidu.com/item/hashcode/7482507?fr=aladdin
15.int intValue():以int形式返回此Integer的值
16.long longValue():在擴大的基元轉換之后,以long返回此Integer的值
29.short shortValue():在縮小基元轉換后以短形式返回此整數的值
35.String toString():返回表示此Integer值的字符串對象
總結
以上是生活随笔為你收集整理的【Java】总结Integer类的API的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【算法分析与设计】经典排序算法实现
- 下一篇: 用博弈论的思想玩游戏(洛谷P3150题题