【发布时间】:2016-02-11 18:58:21
【问题描述】:
我有一个逗号分隔的字符串,其中包含对学生列表进行排序的排序标准:
Input:
String sortOrder = "height, weight, age"
List<student> students;
上面的每个元素都是学生对象上的比较器,它们使用一些复杂的逻辑对学生对象进行排序。我需要知道如何最好地翻译出现在 sortOrder 字符串中的排序顺序,并按该顺序激活匹配的比较器。所以对于上面的例子,身高比较器会先运行,年龄最后运行。
【问题讨论】:
-
“所以对于上面的例子,身高比较器会先运行,年龄最后运行。”。排序不是这样工作的。你按身高排序。当高度相等时,您按重量排序。当权重相等时,按年龄排序。
-
请澄清:您是否想要一个具有三个(或任何数量)级别的单一排序,如@GilbertLeBlanc 所述?或者三种不同的排序,按照
String中列出的顺序执行? -
@ErickG.Hagstrom 我正在寻找后者。
-
这是您一天内就同一件事提出的第三个问题。您应该开始专注于在一个问题中解释您实际想要做什么,而不是打开新问题。请删除其他问题,然后编辑此问题,添加有关您的实际问题的更多信息。
标签: java sorting java-8 comparator