C#中ArrayList的Sort函数用法实例分析
简介
C#中的 ArrayList 是一个动态数组,可以动态地增加或删除数组的元素,不需要提前设置数组的大小。同时,ArrayList 还提供了 Sort 方法来进行元素的排序。Sort 方法是利用快排来完成排序操作的。接下来,我们将详细讲解 C# 中 ArrayList 的 Sort 函数的使用方法。
Sort函数语法
ArrayList 的 Sort 函数具有以下语法:
public void Sort();
public void Sort(IComparer comparer);
public void Sort(int index, int count, IComparer comparer);
其中:
-
第一种形式的 Sort 函数将使用元素的默认比较函数来对整个 ArrayList 中的元素进行排序。
-
第二种形式的 Sort 函数将使用指定的比较器来对整个 ArrayList 中的元素进行排序。
-
第三种形式的 Sort 函数将使用指定的比较器来对从 index 开始的 count 个元素进行排序。
Sort函数使用方法示例
下面是使用 Sort 函数的两个示例:
示例一:
首先,我们创建一个 ArrayList 对象,并且添加三个元素:
ArrayList arrayList = new ArrayList();
arrayList.Add(2);
arrayList.Add(1);
arrayList.Add(3);
然后,我们使用 Sort 函数对整个 ArrayList 执行排序操作:
arrayList.Sort();
最后,我们使用 foreach 循环来遍历 ArrayList,来查看排序后的结果:
foreach (int i in arrayList)
{
Console.Write(i + " ");
}
运行结果:
1 2 3
从上面的结果可以看出,使用默认的比较函数对 ArrayList 进行了排序。
示例二:
我们也可以通过 Sort 函数的第二种形式,使用自定义的比较器来对 ArrayList 进行排序。下面是一个自定义的比较器实现方法:
public class MyComparer : IComparer
{
public int Compare(object x, object y)
{
return ((int)x).CompareTo((int)y);
}
}
这个自定义的比较器将是利用 Compare 函数进行比较,将 x 和 y 两个对象进行比较,如果 x 小于 y,则返回 -1;如果 x 大于 y,则返回 1;如果 x 等于 y,则返回 0。
下面我们再次运用 ArrayList 和这个自定义的比较器,对三个元素进行排序:
ArrayList arrayList = new ArrayList() {2, 1, 3};
arrayList.Sort(new MyComparer());
最后,我们使用 foreach 循环来遍历 ArrayList,来查看排序后的结果:
foreach (int i in arrayList)
{
Console.Write(i + " ");
}
运行结果:
1 2 3
从上面的结果可以看出,使用自定义的比较器对 ArrayList 进行了排序。
总结:
通过上述示例,我们可以看出,Sort 函数在 C# 中是一个非常实用的函数,可以用来对 ArrayList 进行排序。我们还可以通过自定义的比较器,来对 ArrayList 进行更灵活的排序操作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#中Arraylist的sort函数用法实例分析 - Python技术站