Java包装类型缓存池
        2021-05-18 23:16:33
                读代码,下面几个问号处,输出什么?
```
class Hello{    
    
    public static void main(String[] args){
        
        Integer a = 127;
        Integer b = 127;
        System.out.println(a == b);     // ?
        Integer m = 128;
        Integer n = 128;
        System.out.println(m == n);     // ?
        
        int j = 128;
        int k = 128;
        System.out.println(j == k);     // ?
        Integer x = new Integer(127);   // Note: Hello.java uses or overrides a deprecated API
        Integer y = new Integer(127);
        System.out.println(m == n);     // ?
        System.out.println(m.intValue() == n.intValue()); // ?
        
    }
}
```
在 Java 8 中,Integer 缓存池的大小默认为 -128~127。在使用基本类型对应的包装类型时,如果缓存池中存在就可以直接使用缓冲池中的对象
基本类型对应的缓冲池如下:
* boolean values true and false 
* all byte values 
* short values between -128 and 127 
* int values between -128 and 127 
* char in the range \u0000 to \u007F