我正在编码算法问题,下面的代码无法通过大小写
public void pop() {
if (s1.pollFirst() == minStack.peekFirst())
minStack.pollFirst();
}
但是下面可以,
public void pop() {
int tmp = s1.pollFirst() ;
if (tmp == minStack.peekFirst())
minStack.pollFirst();
}
唯一的区别是我如何使用s1,pollFirst()返回结果。我在这里找不到真正的区别。谢谢
使用Integer
比较两个==
值小于-128或大于127的对象将始终为false
。但是,如果将Integer
与原始int
进行比较,则如果实际值相同,则会得到true
。
int n1=128;
Integer n2=127;
Integer n3=127;
Integer n4=128;
Integer n5=128;
System.out.println(n1==n2); //false
System.out.println(n2==n3); //true
System.out.println(n4==n5); //false
System.out.println(n1==n5); //true
在第二个示例中,您正在将值分配给图元int
,因此将其自动取消装箱。