【发布时间】:2018-09-24 11:19:13
【问题描述】:
我有一个名为 classWiseArrayList 的 Pojo 对象的 ArrayList。 Pojo Object 的一个领域是平均的。我需要按升序显示数组列表。
这是我的 Pojo 课程
data class ClassWiseData(
@SerializedName("class_id")
@Expose
val classId: String? = null,
@SerializedName("class_code")
@Expose
val classCode: String? = null,
@SerializedName("average")
@Expose
val average: String? = null)
这是我的代码
classWiseArrayList.sortWith(
Comparator { o1, o2 -> o1?.average!!.compareTo(o2?.average!!) })
当没有一个平均值等于 100 时,排序工作正常,但如果其中一个平均值为 100,则 100 平均值位于顶部而不是底部。
我做错了什么?
【问题讨论】:
-
average的类型是什么? -
@yole 是字符串
-
字符串按字母顺序进行比较,
100在按字母顺序排序时早于59。您需要将平均值作为数字进行比较,然后再将它们转换为字符串。 -
@yole ok 试试看
-
@yole 谢谢它的工作
标签: java android arraylist kotlin comparator