Java Integer.equals和==

这是代码

public class App {
    
    
    public static void main(String[] args) throws Exception {
    
    
        System.out.println(new Integer(10).equals(10));
        System.out.println(new Integer(10).equals(new Integer(10)));
        System.out.println(new Integer(10)==10);
        System.out.println(new Integer(10)==new Integer(10));
        System.out.println(new Integer(10).hashCode()==new Integer(10).hashCode());
        System.out.println(new Integer(10)==11);
        System.out.println(new Integer(10)==new Integer(11));
        System.out.println(new Integer(10).equals(11));
        System.out.println(new Integer(10).equals(new Integer(11)));
        System.out.println(new Integer(10).hashCode()==new Integer(11).hashCode());
    }
}

这是输出

true
true
true
false
true
false
false
false
false
false




这是代码

import java.util.HashMap;
public class App {
    
    
    public static void main(String[] args) throws Exception {
    
    
        HashMap<Integer, String> map = new HashMap<>();
        Integer i = new Integer(1);
        map.put(0, "value0");
        map.put(i, "value1");
        map.put(new Integer(1), "new1");
        map.put(new Integer(2), "val2");
        System.out.println(map.containsKey(0));
        System.out.println(map.containsKey(new Integer(0)));
        System.out.println(map.containsKey(1));
        System.out.println(map.containsKey(new Integer(1)));
        System.out.println(map.containsKey(i));
        System.out.println(map.containsKey(2));
        System.out.println(map.containsKey(new Integer(2)));
        for (String s : map.values())
            System.out.println(s);
    }
}

这是输出

true
true
true
true
true
true
true
value0
new1
val2

猜你喜欢

转载自blog.csdn.net/dscn15848078969/article/details/110098071