|zyciis| 在用泛型的时候,如何来写保存一个可排序的name和value,谢谢

zyciis216 2009-12-28 11:46:36
比如,我现在要保存一个组,
名称和数量
苹果 12
梨 14
香蕉 11

然后可以实现按名称和数量进行排序,
开始我用
Dictionary
不行,因为不能排序
用list也不行因为他不能为list<string,string>
但如果要为这个简单的需求写一个特定的类,感觉太麻烦
而且这里我只用一次
那要怎么来写呢?

谢谢
...全文
72 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿非 2009-12-28
  • 打赏
  • 举报
回复
这个特性是 数组和索引器的特性

你现在的键值对和下标访问的两个需求 是互斥的,非要同时存在这两个功能只能自定义类型实现
zyciis216 2009-12-28
  • 打赏
  • 举报
回复
SortedDictionary<string, int> dct = new SortedDictionary<string, int>();
dct.Add("苹果", 12);
dct.Add("梨", 14);
dct.Add("香蕉", 13);
dct[] 不行这里的key只有string,没有index
比如我想用dct[1]取得梨的这个项

谢谢
AngleBabyHong 2009-12-28
  • 打赏
  • 举报
回复
up
vip__888 2009-12-28
  • 打赏
  • 举报
回复
SortedDictionary <string,int>
我姓区不姓区 2009-12-28
  • 打赏
  • 举报
回复

List<string> list = new List<string>();
list.Add("苹果|12");
list.Add("梨|14");
list.Add("香蕉|11");
list.Sort((s1, s2) => Convert.ToInt32(s1.Split('|')[1]).CompareTo(Convert.ToInt32(s2.Split('|')[1])));
foreach (string s in list)
Console.WriteLine(s);

阿非 2009-12-28
  • 打赏
  • 举报
回复
SortedDictionary<string,int>

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧