排序 ArrayList 以按特定字符串重新排列

ssnyder123

我正在尝试按特定字符串重新排列我的 ArrayList。所以我想通过优先考虑“卡车”类型而不是“轿车”类型或“SUV”类型来重新排列我的列表。从技术上讲,我可以使用它们的字母顺序倒序,但我想实现特定字符串本身具有优先级的位置。例如,如果我有一个随机顺序的汽车列表,如下所示,

ArrayList<Car> cars = new ArrayList<Car>(Arrays.asList(
new Car("1", "truck"), 
new Car("2", "sedan"), 
new Car("3", "SUV"), 
new Car("4", "truck"), 
new Car("5", "truck"));

所以我理想的顺序应该是 1,4,5,2,3。我很欣赏任何想法!

无懈可击

您可以根据 .csv 文件中的索引进行排序List

List<String> order = Arrays.asList("truck", "sedan", "SUV");
cars.sort(Comparator.comparingInt(c -> order.indexOf(c.getType()));

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章