[英]Sort a C# Array based on an object member?
I have a constructor with 2 (double) arrays members : 我有一个2(双)数组成员的构造函数:
constructor[i].x and constructor[i].y ( where i is the number of elements ) 构造函数[i] .x和构造函数[i] .y(其中,i是元素数)
How can I sort the x member : constructor[].x ? 如何对x成员进行排序:constructor []。x?
With LINQ it is just 有了LINQ,
constructor = constructor.OrderBy(a => a.x).ToArray();
Without LINQ 没有LINQ
class CustomClass
{
public double x;
public double y;
}
public class CustomComparer : IComparer<CustomClass>
{
private CustomComparer() { }
public static CustomComparer Instance { get { return _SingeltonInstance; } }
private static CustomComparer _SingeltonInstance = new CustomComparer();
public int Compare(CustomClass a, CustomClass b)
{
return a.x.CompareTo(b.x);
}
}
public class myCode
{
public void SomeFuction(CustomClass[] myClass)
{
//myClass is unsorted here;
Array.Sort(myClass, CustomComparer.Instance);
//myClass is sorted here;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.