如何排序List <integer>?</integer>

时间:2013-12-11 11:36:57

标签: java list sorting

我有代码,我使用list来存储数据。 我想对它的数据进行排序,那么有没有办法对数据进行排序,还是我必须通过比较所有数据来手动对其进行排序?

public class tes
{
    public static void main(String args[])
    {
        List<Integer> lList = new ArrayList<Integer>();
        lList.add(4);
        lList.add(1);
        lList.add(7);
        lList.add(2);
        lList.add(9);
        lList.add(1);
        lList.add(5);
        for(int i=0; i<lList.size();i++ )
        {
            System.out.println(lList.get(i));
        }
    }
}

7 个答案:

答案 0 :(得分:32)

升序:

 Collections.sort(lList); 

降序:

Collections.sort(lList, Collections.reverseOrder()); 

答案 1 :(得分:23)

您可以使用Collections对数据进行排序:

public class tes 
{
    public static void main(String args[])
    {
        List<Integer> lList = new ArrayList<Integer>();

        lList.add(4);       
        lList.add(1);
        lList.add(7);
        lList.add(2);
        lList.add(9);
        lList.add(1);
        lList.add(5);

        Collections.sort(lList);

        for(int i=0; i<lList.size();i++ )
        {
            System.out.println(lList.get(i));
        }

    }
}

答案 2 :(得分:4)

使用Collections类API进行排序。

Collections.sort(list);

答案 3 :(得分:2)

只需在此使用Collections.sort(yourListHere)进行排序。

您可以从here了解有关收藏集的更多信息。

答案 4 :(得分:1)

按升序排序:

Collections.sort(lList);

反向顺序:

Collections.reverse(lList);

答案 5 :(得分:0)

以下是解决方案:

public class tes 
{
    public static void main(String args[])
    {
        List<Integer> lList = new ArrayList<Integer>();
        lList.add(4);

        lList.add(1);
        lList.add(7);
        lList.add(2);
        lList.add(9);
        lList.add(1);
        lList.add(5);

        Collections.sort(list);
        for(int i=0; i<lList.size();i++ )
        {
            System.out.println(lList.get(i));
        }
     }
}

答案 6 :(得分:0)

您可以在Collections课程中使用实用程序方法 public static <T extends Comparable<? super T>> void sort(List<T> list)

public static <T> void sort(List<T> list,Comparator<? super T> c)

请参阅ComparableComparator接口,以便更灵活地对对象进行排序。