包装类面试题:
自动包装当中的一些注意事项
在包装类当中存在的自动化包装,在有些时候是跟数值相挂钩的
在进行自动包装的时候,会先进行一个判断,
1>判断你所输入的数值是否是超过了byte数据类型的范围
在-128——127之间,如果是的话,会将这个数装在一个对应的Integer的数组当中,
再返还一个这个索引对应的数组当中的内容,从而通过比较地址值是否在同一个的数组
当中来进行判断这个Integer类型的数字是否是相等的
2>对于超过这个范围之外的数据来说,自动包装会将其自动的创建一个新的对象,从而让不同的数字之间的地址值
是不一样的。使用运算符号进行比较的时候也会因此无法进行比较其中的内容是否是相同的,
但是如果一定要比价其中的内容,可以使用各个包装类当中的equals方法来进行比较
*/
public static void main(String[] args) { Integer a=127; Integer b=127; System.out.println(a==b); //结果是:true Integer c=129; Integer d=129; System.out.println(c==d); //结果是false System.out.println(c.equals(d)); //使用Integer当中的一些方法,从而比较超过相应byte值的自动包装类型 //结果是true Integer e=12; Integer f=13; System.out.println(e==f); //结果是false,直接比较其中的内容 }