gpt4 book ai didi

java - int 与整数比较 Java

转载 作者:IT老高 更新时间:2023-10-28 21:07:17 27 4
gpt4 key购买 nike

class datatype1
{

public static void main(String args[])
{
int i1 = 1;
Integer i2 = 1;
Integer i3 = new Integer(1);

System.out.println("i1 == i2"+(i1==i2));
System.out.println("i1 == i3"+(i1==i3));
System.out.println("i2 == i3"+(i2==i3));
}

}

输出

i1 == i2true
i1 == i3true
i2 == i3false

谁能解释为什么我在比较 i2 和 i3 时会出错?

最佳答案

i1 == i2

结果为 un-boxing并进行了常规的 int 比较。 (见 first point in JLS 5.6.2)

i2 == i3 

结果为 reference comparsion .请记住,i2i3 是两个不同的对象。 (见 JLS 15.21.3)

关于java - int 与整数比较 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18445158/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com