C# 如何使用 Linq 按关联数值字段排序输出对应字符串
C# Linq 按关联数值排序后输出对应文本实现方法
前置要求:需提前在代码头部引入
System.Linq命名空间
核心实现逻辑
将Mountain实例存入集合后,通过Linq的排序+投影筛选操作即可实现需求,完整代码如下:
// 1. 初始化山脉集合 List<Mountain> mountains = new List<Mountain> { new Mountain("Mountain1", 3000), new Mountain("Mountain2", 2000), new Mountain("Mountain3", 6500) }; // 2. Linq链式操作:按海拔降序排序后仅提取山脉名称 var sortedMountainNames = mountains .OrderByDescending(m => m.山脉高度) // 若需升序排序可替换为 OrderBy 方法 .Select(m => m.山脉名称); // 3. 输出结果 foreach (string name in sortedMountainNames) { Console.WriteLine(name); }
代码说明
OrderByDescending方法用于按照山脉高度从高到低排序,符合示例输出要求Select方法为投影操作,仅提取集合元素的山脉名称字段,过滤不需要的高度属性- 运行上述代码输出结果与预期完全一致:
Mountain3 Mountain1 Mountain2
内容的提问来源于stack exchange,提问作者Petr Barabáš
相关产品推荐
相关产品推荐

