当前位置: 首页 > 编程语言 > C#

将两个列表排序成一个?分享

时间:2023-04-10 23:56:40 C#

将两个列表一起排序成一个?我有两个按索引访问的列表(例如名称[10]、日期[10])。它们密切相关,因此Name[10]与Date[10]相关,反之亦然。这种设计效果很好,但现在我需要对它们进行排序。我可以单独对它们进行排序,但这显然会消除两个列表之间的关系并使它们变得毫无价值。我考虑过使用Dictionary但似乎我只能通过Key访问它(这也是不可行的)。基本上我需要三个东西,两个值和一个我可以遍历数字的索引(不是foreach)。有人可以帮忙吗?看来我需要更改数据结构或解决如何将两个不同的列表排序在一起...publicclassResults{publicListName{get;放;}公开列表日期{get;放;}}for(intx=0;xnew{name,date=MyDates[i]});从这里开始,这两个价值观不再松散地联系在一起。现在你可以对它们进行排序varsortedNamesAndDates=namesAndDates.OrderBy(a=>a.date);或者你需要做的任何其他事情。创建一个名为“Result”的类,它有两个属性publicclassResult{publicstringName{set;get;}publicDateTimeDate{set;get;}}现在你可以创建这个类的列表ObjListResult=newList();现在,在您的情况下,如果您愿意,您可以读取不同列表的内容并将其放入我们的新列表中。(这只是你的情况,如果你真的想将数据从旧列表移动到我们的新列表。如果可能,你可以更新将数据加载到两个列表中的代码(这是正确的方法)以便它只是加载将数据放入我们的新类型结果列表中,并防止此移植代码将数据移动到新列表中。for(inti=0;i你可以像这样访问新列表中的项目objListResult[2].Date会给你列表中第二个对象的存储日期objListResult[2].Name会给你第一个列表两个对象的存储名称可以用字典,键名,值使用日期可以很方便的对它们进行分类以上是C#学习教程:Sorttwoliststogetherintoone?分享全部内容,如果对大家有帮助很有用,需要了解更多C#学习教程,希望大家多多关注---本文收集自网络,不代表立场,如涉及侵权,请点击有权联系管理员删除,如需转载请注明出处: