我如何对ArrayList进行排序?

alx*_*cyl 2 java sorting arraylist

我有一个类ArrayList的多个实例ElementClass.里面ElementClass是一个名为的方法getCounter(),它返回counter该类中变量的值.这个变量只能有0,12作为它的值.

我需要ArrayList根据方法getCounter()返回的值按升序对这些条目进行排序.我怎么能做到这一点?我尝试研究几种方法,但我发现的所有方法都需要设置一个值.例如:

list[i + 1] = temp

但是ArrayLists不允许设置值.例如:

ArrayList<ElementClass> temp = list.get(i);
list.get(i + 1) = temp;
Run Code Online (Sandbox Code Playgroud)

由于错误,上面的代码不允许我编译.ArrayLists只允许在列表末尾添加项目(通过.add(item)方法)并从特定索引中删除项目(通过该.remove(index)方法).

如何仅使用add()remove()方法完成排序?或者是否有另一种方法在Java中对ArrayLists进行排序?

Thi*_*ilo 10

Collections.sort(list, new Comparator<ElementClass>() {
   public int compare(ElementClass a, ElementClass b){
      return a.getCounter()-b.getCounter();
   }
});
Run Code Online (Sandbox Code Playgroud)