Csharp/C#教程:如何在Visual C#中对对象数组进行排序?分享


如何在Visual C#中对对象数组进行排序?

我有一个对象有两个成员都是整数值。 我制作了这些对象的数组。 每个对象值都用随机整数填充。

我想根据第一个成员值对对象数组进行排序。 我该怎么办?

你在使用.NET 3.5吗? 如果是这样,它就像:

array = array.OrderBy(x => x.MemberName).ToArray(); 

这将创建一个新的数组 – 如果任何其他代码具有对旧数组的引用,它仍将看到未排序的数据。

或者,您可以使用Array.Sort方法,该方法将使用以下Array.Sort方法之一就地对数组进行排序:

如果您使用C#3,最后一个可能是最简单的解决方案:

 Array.Sort(array, (x1, x2) => x1.MemberName.CompareTo(x2.MemberName)); 

您必须首先在类中实现IComparable 。 这些应该有助于:
排序对象的ArrayList
如何在Visual C#中使用IComparable和IComparer接口

上述就是C#学习教程:如何在Visual C#中对对象数组进行排序?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 class Program { class Foo { public int FirstMemberValue { get; set; } } static void Main(string[] args) { var foos = new[] { new Foo { FirstMemberValue = 1 }, new Foo { FirstMemberValue = 3 }, new Foo { FirstMemberValue = 2 } }; Array.Sort(foos, (f1, f2) => f1.FirstMemberValue.CompareTo(f2.FirstMemberValue)); foreach (var item in foos) { Console.WriteLine(item.FirstMemberValue); } } } 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1017807.html

(0)
上一篇 2022年1月3日
下一篇 2022年1月3日

精彩推荐