ArrayList的BinarySearch(对象,IComparer)方法使用指定的比较获取元素的整个排序的arrayList,并返回元素的索引。
C# ArrayList中的BinarySearch(Object, IComparer)方法示例
public class SimpleStringComparer : IComparer
{
int IComparer.Compare(object x, object y)
{
int cmpstr = (int)x;
return cmpstr.CompareTo((int)y);
}
}
public class MyArrayList : ArrayList
{
public static void Main()
{
//Creates a new ArrayList.
MyArrayList numbers = new MyArrayList();
numbers.Add(10);
numbers.Add(21);
numbers.Add(54);
numbers.Add(3);
numbers.Add(2);
numbers.Add(10);
numbers.Add(5);
//display the array
Console.WriteLine("The number of elements in the arraylist are:");
foreach (int i in numbers)
{
Console.WriteLine(i);
}
//BinarySearch requires a sorted ArrayList.so perform sorting in arraylist by using sort() method
numbers.Sort();
//display the sorted element
Console.WriteLine("After sorting the arraylist are:");
foreach (int i in numbers)
{
Console.WriteLine(i);
}
//perform searching
int index = numbers.BinarySearch(10, new SimpleStringComparer());
Console.WriteLine("Binary search, item found at index:{0}", index);
}
}
日期:2020-04-11 22:50:15 来源:oir作者:oir
