【问题标题】:OrderBy in android custom object listandroid自定义对象列表中的OrderBy
【发布时间】:2014-09-18 01:04:18
【问题描述】:

我在 android 类中有一个我自己的类对象的列表。

我想用那个列表做两件事。

首先我想像以前用 C# 代码那样来应用订单。

myList.orderby(x => x.energyLevel);

其次,我想从该列表中获取一些数据。像这样

myList.where(x=>x.gender=="male");

如何在安卓中做到这一点?

【问题讨论】:

  • 尝试使用数据库轻松实现。
  • TCA 的答案包括排序。检查此帖子线程以获取过滤选项:stackoverflow.com/questions/122105/…。不幸的是,Android 的 Java 还不支持 lambda。
  • 是的,但它仅适用于我想按我的变量排序的字符串类型,即 Double
  • 它说:“类型不匹配:不能从布尔转换为整数”
  • (int)obj2.energylevel - (int)obj1.energylevel 解决了我的问题 :) 升序使用 (int)obj1.energylevel - (int)obj2.energylevel

标签: android list sorting data-manipulation


【解决方案1】:

orderby 在安卓中使用ArrayList

  Collections.sort(myList, new Comparator<MyListObj>(){
  public int compare(MyListObj obj1, MyListObj obj2) {
    return obj1.x.compareToIgnoreCase(obj2.x);
  }
});

【讨论】:

  • 无法理解,这会做什么?
  • 这将根据 compare() docs.oracle.com/javase/6/docs/api/java/util/… 对 myList 进行排序
  • 这很好,但是如果我的 obj1.x 类型是 double 呢?
  • 其实我的obj1.energyLevel类型是double
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-13
  • 2015-05-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多