三个方法,其中两个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)实现。源码如下: