Android ListView:如何按特定元素对列表或arrayList排序? 例如,仅显示正在使用的汽车;“梅赛德斯”或 “日产?” 或者到制造年份;只有汽车 在我的listView中于2004年制造

Android ListView:如何按特定元素对列表或arrayList排序? 例如,仅显示正在使用的汽车;“梅赛德斯”或 “日产?” 或者到制造年份;只有汽车 在我的listView中于2004年制造,android,listview,Android,Listview,我的汽车课看起来像这样 public class AutoMobil { private String make; private String brandName; private int yearOfManufacture; } 我的汽车填充列表如下所示 private void autoMobileList() { MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Corolla’’, ‘’2011’’

我的汽车课看起来像这样

public class AutoMobil {
     private String make;
     private String brandName;
     private int yearOfManufacture;
  }
我的汽车填充列表如下所示

private void autoMobileList() {
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Corolla’’, ‘’2011’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Corolla’’, ‘’2002’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Mark2’’, ‘’1998’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Camry’’, ‘’2004’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Corona’’, ‘’2011’’));
    MyAutoMobilList.add(new AutoMobil(“Nissan’’, ‘’March’’, ‘’2013’’));
    MyAutoMobilList.add(new AutoMobil(“Nissan’’, ‘’Micra’’, ‘’2001’’));
    MyAutoMobilList.add(new AutoMobil(“Nissan’’, ‘’Laurel’’, ‘’2014’’));
    MyAutoMobilList.add(new AutoMobil(“Mercedes’’, ‘’SL500’’, ‘’2004’’));
    MyAutoMobilList.add(new AutoMobil(“Mercedes’’, ‘’190E’’, ‘’1992’’));
    MyAutoMobilList.add(new AutoMobil(“Mercedes’’, ‘’C200’’, ‘’1993’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Hiace’’, ‘’1998’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Hiace’’, ‘’2003’’));
    MyAutoMobilList.add(new AutoMobil(“Toyota’’, ‘’Vitz’’, ‘’2004’’));

}
参考这个。我以前回答过。您的要求与此类似。

按品牌名称排序(
String
):

仅显示特定项目:

ArrayList<AutoMobil> list_to_show = new ArrayList<AutoMobil>();
for (int i = 0; i < list.size(); i++)
     if (list.getBrandName().equals("Nissan"))
        list_to_show.add(list.get(i));
ArrayList list_to_show=new ArrayList();
对于(int i=0;i
Thank a bunch的可能副本它在java中工作得非常完美。但在android活动中放置collections.sort实例时仍然存在问题或错误。是否应将代码应用于我的适配器?如果是这样,我应该怎么做?@Kim确保您有这个导入java.util.Collections;
Collections.sort(conversations, new Comparator<AutoMobil>(){
                public int compare(AutoMobil s1, AutoMobil s2) {
        if (s1.getYearOfManufacture() < s2.getYearOfManufacture())
            return 1;
        if (s1.getYearOfManufacture() > s2.getYearOfManufacture())
            return -1;
        else
            return 0;
    }
});
ArrayList<AutoMobil> list_to_show = new ArrayList<AutoMobil>();
for (int i = 0; i < list.size(); i++)
     if (list.getBrandName().equals("Nissan"))
        list_to_show.add(list.get(i));