日期:2014-05-20  浏览次数:20780 次

我想对集合对象里面的元素进行排序,运行时出现运算符 > 不能应用于 java.lang.Object,java.lang.Object
import java.util.*;

public class Demol {
public static void main(String[] args){
ArrayList<Object> list = new ArrayList<Object>();
list.add("98");
list.add("-1");
list.add("23");
list.add("0");
list.add("8");
list.add("14");
for(int i=0; i<list.size(); i++){
for(int j=0; j<list.size(); j++){
if(list.get(i) > list.get(j)){
String temp = list.get(i);
list.get(i) = list.get(j);
list.get(j) = temp;
}
}
}
System.out.println(list);
}
}
------解决方案--------------------
		List<Integer> list = new ArrayList<Integer>();
list.add(98);
list.add(-1);
list.add(23);
list.add(0);
list.add(8);
list.add(14);
Collections.sort(list);

------解决方案--------------------
这样也可以,最后遍历一下就可以了,我这是直接打印了;
public class Demo1
{
public static void main(String[] args)
{
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(98);
list.add(-1);
list.add(23);
list.add(0);
list.add(8);
list.add(14);
for (int i = 0; i < list.size(); i++)
{
for (int j = 0; j < list.size(); j++)
{
if (list.get(i) > list.get(j))
{
int temp = list.get(i);
list.set(i, list.get(j));
list.set(j, temp);
}
}
}

System.out.println(list.toString());

}
}