[英]How to compare two Integers in java
我想使用<> ==比较两个列表中的元素
这是使用intValue()的正确方法吗?
List<Integer> a = new ArrayList<Integer>();
a.add(129);
List<Integer> b = new ArrayList<Integer>();
b.add(128);
if(a.get(0).intValue() > b.get(o).intValue()) {
// something
}
你正在以正确的方式做到这一点。
如评论中所述,您也可以compareTo()
。 compareTo()
的替代方法是equals()
,在对象为null的情况下不会抛出NullPointerException。
你的方式是正确的。 但是有一点小小的修正。
1)
a.get(0).intValue() == b.get(0).intValue()
2)
a.get(0).equals(b.get(0))
这是你的代码中的问题,你必须得到(0) ,而不是得到(1) 。 请记住,在java中它始终以0开头 。
可以使用equals()
或CompareTo方法比较值。
import java.util.ArrayList;
import java.util.List;
public class TestClass {
public static void main(String[] args) {
// TODO Auto-generated method stub
List<Integer> a= new ArrayList<Integer>();
a.add(128);
List<Integer> b = new ArrayList<Integer>();
b.add(128);
if(a.get(0).intValue() == b.get(0).intValue()){
System.out.println("success");
}else{
System.out.println("failure");
}
if(a.get(0).equals(b.get(0))){
System.out.println("success");
}else{
System.out.println("failure");
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.