按降序对数据排序
本文关键字:排序 数据 降序 | 更新日期: 2023-09-27 18:27:28
我从两个textbox
中检索到以下数据。我想按时间降序排序。我尝试使用字典,但无法插入重复的值。有什么想法吗?
ID time ID time
4 10 15 19
12 13 WANT SORTED BY TIME 12 13
15 19 ---->> 12 13
4 10 4 10
12 13 4 10
Dictionaries不允许重复键,因此这不是您想要的,因为您的ID
值显然不是唯一的键值。
创建一个类来保存数据,然后使用Linq的OrderByDescending对其进行排序:
public class MyTimeData {
public int ID { get; set; }
public int Time { get; set; }
}
var list = new List<MyTimeData>();
// Add items to the list
list = list.OrderByDescending(d => d.Time).ToList();
yourList.OrderByDescending(x => x.Time);
如果LINQ不可用或您感兴趣的东西,另一个选项是SortedList
数据结构(您可以颠倒顺序使其递减,因为默认情况下它是递增的),您可以这样使用它:
public class MyTimeData {
public int ID { get; set; }
public int Time { get; set; }
}
var list = new SortedList<MyTimeData>();
// Add items to sorted list
// Reverse to make it descending
var listDescending = list.Reverse();
foreach (var item in listDescending)
{
// Do something with item
}