比较arraylist中的元素

时间:2013-04-14 20:30:17

标签: java arrays compare

我必须检查arraylist中的“标记”是否按顺序增加。

private E[] data;      // where the data is stored   
private int size;      // how many items have been added to the list

public TopSpinArray(int numTokens, int spinSize)
{
    super(numTokens, spinSize);

    data = (E[])(new Object[numTokens]);
    size = 0;
} 

public boolean isSolved()
{     
    for(int i = 0; i < numTokens; i++)
    {
        if(data[i] < data[i+1])
        { 
            return true;
        }
    }
    return false;
}

当我编译时,它说“二元运算符的错误操作数类型”&lt;'                            第一种:E;第二种:E“

如何查看它们是否在增加?

1 个答案:

答案 0 :(得分:4)

运算符<仅对某些类型的对象有效。为了能够比较任何可比类型的对象(我将E暗示您的令牌确实实现了Comparable,否则您的问题毫无意义,)您可以使用compareTo()

for(int i = 0; i < numTokens - 1; i++) {
     if(data[i].compareTo(data[i+1]) > 0) { 
         return false;
     }
}
return true;