三個方法,其中兩個static方法。1、public String toString():該方法內部使用toString(int i)實現。2、public static String toString(int i):該方法內部使用stringSize方法巧妙的獲取入參的size,然后用getChars把入參轉換成字符數組,最后new一個新String對象。3、public static String toString(int i, int radix):參入radix為進制數,該方法支持2-36進制字符串的轉換,radix大于36或小于2時則轉換成10進制的字符串,轉換方法直接用toString(int i),其它進制度的轉換方法則是先初始化一個33位的字符數組然后把參數i轉換成負數,然后對數組從高到低逐個計算出對應的字符,如果是負數最后在加上“-”號,最后把有值的字符位實例化一個字符串對象。源碼如下:
equals
該方法,先判斷入參是否為Integer對象,然后將對象強轉為Integer取int的值用==比較
hashCode:Integer 類的hashCode直接返回其 int 類型的數據
parseInt
兩個靜態方法:1、public static int parseInt(String s) throws NumberFormatException內部使用parseInt(String s, int radix)實現2、public static int parseInt(String s, int radix) throws NumberFormatException兩個參數第一個為數字字符串,第二個為數字的進制數。如果s為null或radix大于36或小于2拋出對應異常。轉換實現先判斷正負號和然后計算數值,計算數值使用Character.digit(char ch, int radix)實現。源碼如下: