java - 在 Java 或 C# 中按汽车公司产品类别对列表进行排序时需要帮助
问题描述
我需要帮助按汽车公司的产品类别从低成本到高成本对 ArrayList 进行排序。排序顺序应该是 Alto、Swift、Brezza(从低成本到高成本)。例如:
我的输入: Brezza、Alto、Alto、Brezza、Swift、Alto、Swift、Alto
预期输出: Alto、Alto、Alto、Swift、Swift、Brezza、Brezza
提前致谢
解决方案
此解决方案适用于 C#:使用 LINQOrderBy
并为每个可能的字符串分配一个索引:
List<string> input = new List<string> { "Brezza", "Alto", "Alto", "Brezza", "Swift", "Alto", "Swift", "Alto"};
List<string> result = input.OrderBy(x => x switch { "Alto" => 1, "Swift" => 2, "Brezza" => 3, _ => 4 }).ToList();
如果一个字符串既不是 Brezza、Alto 或 Swift,我分配最高的索引,这意味着这些项目将在列表的末尾。
推荐阅读
- r - 将函数应用于列表中数据框的特定列
- javascript - Bokeh JS callback when plotting differential equations
- c++ - 自午夜以来的秒数
- submenu - 回复:创建顶部和侧边菜单
- mysql - 在 MySQL 中使用 mm/dd/yyyy 格式选择数据
- mysql - @@global.timezone 和 @@system_time_zone 之间的 MySQL 区别
- ios - Objective-c 访问 plist 中的值
- python - pyspark中的累积和
- r - R Shiny App 的问题 --> 交互式生存图
- reactjs - React - Material-UI - 如何在 react-hook-form 中使用 Select 和多个值