gpt4 book ai didi

c# - 在 C# 中,如何按尾数对 double 列表进行排序?

转载 作者:太空狗 更新时间:2023-10-29 22:15:34 25 4
gpt4 key购买 nike

如何按 double 的小数部分对 double 列表进行排序。
例如: 对于输入 <1.2, 2.3, 1.12, 5.1> , 排序后输出 应该是 <5.1, 1.12, 1.2, 2.3>

最佳答案

您可以通过 OrderBy()Math.Truncate() 方法实现,如下所示。 x-Math.Truncate(x) 为您提供小数点后的数字,OrderBy 将按升序排列它们。看看这个example并尝试使用以下代码片段

 List<double> input = new List<double>(){1.2, 2.3, 1.12, 5.1};
input = input.OrderBy(x=>x-Math.Truncate(x)).ToList();
Console.WriteLine(String.Join("\n",input));

或者您也可以尝试使用 .OrderBy(x=>x-(int)x) 而不是 OrderBy(x=>x-Math.Truncate(x)

关于c# - 在 C# 中,如何按尾数对 double 列表进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44015292/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com