c# - 我如何通过 C# 按接近零的值基数自定义排序字典

标签 c# sorting dictionary

我有一个 Dictionary<int, double>我想自定义排序。但是是不是排序有点不一样。

例如这里是代码:

Dictionary<int, double> dicZeroPeriods = new Dictionary<int, double>();
dicZeroPeriods.Add (80,-3.5);
dicZeroPeriods.Add (90,-2.4);
dicZeroPeriods.Add (50,4.2);
dicZeroPeriods.Add (65,1.2);

那么我如何自定义排序 dicZeroPeriods值(value)基数接近于零。我的意思是结果应该是:

65,1.2
90,-2.4
80,-3.5
50,4.2

最佳答案

只需将 OrderByMath.Abs 一起使用功能。给你:

dicZeroPeriods = dicZeroPeriods.OrderBy(x => Math.Abs(x.Value))
            .ToDictionary(x => x.Key, x => x.Value);

关于c# - 我如何通过 C# 按接近零的值基数自定义排序字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42524255/

相关文章:

c# - 来自另一个模型的 MVC 显示属性

javascript - 检查数组键是否为数字

c# - c#中的多边形深度排序

c# - 按月分组列表

c# - 如何等待 BackgroundWorker 取消?

C# 基于简单值的 DTO 比较(和 GetHashCode 困境)

python - del 在 Python 中什么时候有用?

html - 如何在 Canvas 上渲染 d3.js map ,使其不模糊

c# - 具有动态参数的 ObjectDataSource Update 方法

php - Vim:对 php 文件中的所有 use 语句进行排序