首页 > 编程 > C# > 正文

C#中Arraylist的sort函数用法实例分析

2020-01-24 01:25:26
字体:
来源:转载
供稿:网友

本文实例讲述了C#中Arraylist的sort函数用法。分享给大家供大家参考。具体如下:

ArrayList的sort函数有几种比较常用的重载:

1.不带参数

2.带一个参数

public virtual void Sort(  IComparer comparer)

参数

comparer

类型:System.Collections.IComparer

比较元素时要使用的 IComparer 实现。

- 或 -

null 引用(Visual Basic 中为 Nothing)将使用每个元数的 IComparable 实现。

示例:

using System;using System.Collections;public class SamplesArrayList {  public class myReverserClass : IComparer {   // Calls CaseInsensitiveComparer.Compare with the parameters reversed.   int IComparer.Compare( Object x, Object y ) {     return( (new CaseInsensitiveComparer()).Compare( y, x ) );   }  }  public static void Main() {   // Creates and initializes a new ArrayList.   ArrayList myAL = new ArrayList();   myAL.Add( "The" );   myAL.Add( "quick" );   myAL.Add( "brown" );   myAL.Add( "fox" );   myAL.Add( "jumps" );   myAL.Add( "over" );   myAL.Add( "the" );   myAL.Add( "lazy" );   myAL.Add( "dog" );   // Displays the values of the ArrayList.   Console.WriteLine( "The ArrayList initially contains the following values:" );   PrintIndexAndValues( myAL );   // Sorts the values of the ArrayList using the default comparer.   myAL.Sort();   Console.WriteLine( "After sorting with the default comparer:" );   PrintIndexAndValues( myAL );   // Sorts the values of the ArrayList using the reverse case-insensitive comparer.   IComparer myComparer = new myReverserClass();   myAL.Sort( myComparer );   Console.WriteLine( "After sorting with the reverse case-insensitive comparer:" );   PrintIndexAndValues( myAL );  }  public static void PrintIndexAndValues( IEnumerable myList ) {   int i = 0;   foreach ( Object obj in myList )     Console.WriteLine( "/t[{0}]:/t{1}", i++, obj );   Console.WriteLine();  }}/* This code produces the following output.The ArrayList initially contains the following values:    [0]:  The    [1]:  quick    [2]:  brown    [3]:  fox    [4]:  jumps    [5]:  over    [6]:  the    [7]:  lazy    [8]:  dogAfter sorting with the default comparer:    [0]:  brown    [1]:  dog    [2]:  fox    [3]:  jumps    [4]:  lazy    [5]:  over    [6]:  quick    [7]:  the    [8]:  TheAfter sorting with the reverse case-insensitive comparer:    [0]:  the    [1]:  The    [2]:  quick    [3]:  over    [4]:  lazy    [5]:  jumps    [6]:  fox    [7]:  dog    [8]:  brown */

希望本文所述对大家的C#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表