Java 如何对ArrayList排序<;对象>;按升序排列

Java 如何对ArrayList排序<;对象>;按升序排列,java,android,sorting,arraylist,collections,Java,Android,Sorting,Arraylist,Collections,我需要根据名称按升序对ArrayList(自定义对象)进行排序。为此,我使用比较器方法 我的阵列列表: ArrayList modelList=new ArrayList() 我正在使用的代码: Comparator<Model> comparator = new Comparator<Model>() { @Override public int compare(CarsModel lhs, CarsModel rh

我需要根据名称按升序对
ArrayList
(自定义对象)进行排序。为此,我使用比较器方法

我的阵列列表:

ArrayList modelList=new ArrayList()

我正在使用的代码:

   Comparator<Model> comparator = new Comparator<Model>() {
            @Override
            public int compare(CarsModel lhs, CarsModel rhs) {

                String  left = lhs.getName();
                String right = rhs.getName();

                return left.compareTo(right);

            }
        };

   ArrayList<Model> sortedModel = Collections.sort(modelList,comparator);

//While I try to fetch the sorted ArrayList, I am getting error message 
输出:

ArrayList<Model> modelList = new ArrayList<Model>();
modelList.add(new Model("chandru"));
modelList.add(new Model("mani"));
modelList.add(new Model("vivek"));
modelList.add(new Model("david"));
chandru
mani
vivek
david
chandru
david
mani
vivek
chandru
david
mani
vivek
排序后我的要求如下:

ArrayList<Model> modelList = new ArrayList<Model>();
modelList.add(new Model("chandru"));
modelList.add(new Model("mani"));
modelList.add(new Model("vivek"));
modelList.add(new Model("david"));
chandru
mani
vivek
david
chandru
david
mani
vivek
chandru
david
mani
vivek
输出:

ArrayList<Model> modelList = new ArrayList<Model>();
modelList.add(new Model("chandru"));
modelList.add(new Model("mani"));
modelList.add(new Model("vivek"));
modelList.add(new Model("david"));
chandru
mani
vivek
david
chandru
david
mani
vivek
chandru
david
mani
vivek

你的方法是正确的。使您的
比较器
内部与以下示例类似(或者您可以创建一个新类):

Collections.sort(actorsList,newcomparator(){
@凌驾
公共整数比较(演员左、演员右){
返回lhs.getName().compareTo(rhs.getName());
}
});

输出似乎与需求中的输出相同。那么到底是什么问题呢?我不太明白这个问题。什么不起作用?我需要在ArrayList中分配排序数组。你能解释一下错误吗。您的代码的输出是什么?我得到了不兼容的类型错误。您能告诉我下降的原因吗order@Prasad更改
lhs
rhs
位置。非常感谢您提供的解决方案,它运行良好,节省了我大量的时间!这段代码工作正常,我将使用这段代码…这段代码在字符串和整数值中工作