对int array进行排序

时间:2023-03-08 23:45:27
对int array进行排序

今天再学习一些C#的基础知识,如对 Int Array进行排序:

你可以在控制台应用程序中,创建一个类别,它属性和2个构造函数:
对int array进行排序

 class Af
{
private int[] myVar; public int[] MyIntArray
{
get { return myVar; }
set { myVar = value; }
} public Af()
{ } public Af(int[] arr)
{
this.myVar = arr;
} }

Source Code

接下来,我在这个类别中,添加我们处理数据的方法:
如我们需要在屏幕中输出的结果:
对int array进行排序

 private void Output(int[] sortResult)
{
foreach (var i in sortResult)
{
Console.WriteLine(i);
}
} private void Output(IOrderedEnumerable<int> sortResult)
{
foreach (var i in sortResult)
{
Console.WriteLine(i);
}
}

Source Code

数组排序,我们可以使用Sort()方法来进行:
对int array进行排序

 public void SortAsc()
{
Array.Sort(myVar);
Output(myVar);
}

Source Code

现在,我们可以到控制台进行测试上面所写的代码:
对int array进行排序

如果我们需要倒序排列输出呢?你可以使用Reverse()方法,也就是说,先进行Sort()之后,再使用Reverse()方法来反序一下:

对int array进行排序

 public void SortDesc()
{
Array.Sort(myVar);
Array.Reverse(myVar);
Output(myVar);
}

Source Code

此时,我们再去控制台看看代码写得怎样:
对int array进行排序

写到这里,原本功能已经实现了,但是Insus.NET在这里,想使用另外的方法来实现此相同的功能:
对int array进行排序

 public void ArrayOrderBy()
{
var result = myVar.OrderBy(g => g);
Output(result);
} public void ArrayOrderByDescending()
{
var result = myVar.OrderByDescending(g => g);
Output(result);
}

Source Code

运行结果:
对int array进行排序