package com.heima.wraples; import java.lang.Integer.IntegerCache; import java.net.Inet4Address; public class Demo5_Integer { //Integer类的面试题 public static void main(String[] args) { demo1(); Integer i5=97; //自动装箱 Integer i6=97; System.out.println(i5==i6); //true,说明没有重写创建对象,而是指向同一个对象 System.out.println(i5.equals(i6));//true Integer i7=128; Integer i8=128; System.err.println(i7==i8); //flase System.out.println(i8.equals(i7));//true /* * -128---+127是byte的取值范围,如果在这个取值范围内自动装箱就不会新创建对象,而是从常量池中获取 * 如果超过了取值范围就会新创建对象 * public static Integer valueOf(int i) { if (i >= IntegerCache.low && i <= IntegerCache.high) return IntegerCache.cache[i + (-IntegerCache.low)]; return new Integer(i); } * */ } private static void demo1() { Integer i1=new Integer(97); Integer i2=new Integer(97); System.out.println(i1==i2); //false,返回的是地址值, System.out.println(i1.equals(i2)); //true,只要int值相同就返回true System.out.println("///////////////////"); Integer i3=new Integer(197); Integer i4=new Integer(197); System.out.println(i3==i4); //false System.out.println(i3.equals(i4)); //true System.out.println("/////////////"); } }
Integer类面试题
猜你喜欢
转载自blog.csdn.net/qq_34788903/article/details/80494867
今日推荐
周排行