如何在java中比较两个整数

时间:2014-04-16 17:23:21

标签: java integer

我想使用<比较两个列表中的元素> ==

使用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
}

2 个答案:

答案 0 :(得分:8)

你正在以正确的方式做到这一点。

如评论中所述,您也可以compareTo()compareTo()的替代是equals(),在对象为空的情况下不会抛出NullPointerException。

答案 1 :(得分:2)

你的方式是正确的。但经过一次小修正。

1)

a.get(0).intValue() == b.get(0).intValue()

2)

a.get(0).equals(b.get(0))

这是您的代码中的问题,您必须获取(0),而不是 get(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");
        }

    }

}