ImmutableList<T>.BinarySearch 方法

定义

重载

BinarySearch(T)

使用默认的比较器在整个已排序的列表中搜索元素,并返回该元素从零开始的索引。

BinarySearch(T, IComparer<T>)

使用指定的比较器在整个已排序的列表中搜索元素,并返回该元素从零开始的索引。

BinarySearch(Int32, Int32, T, IComparer<T>)

使用指定的比较器在已排序列表的某个元素范围中搜索元素,并返回该元素从零开始的索引。

BinarySearch(T)

Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs

使用默认的比较器在整个已排序的列表中搜索元素,并返回该元素从零开始的索引。

public:
 virtual int BinarySearch(T item);
public:
 int BinarySearch(T item);
public int BinarySearch (T item);
abstract member BinarySearch : 'T -> int
override this.BinarySearch : 'T -> int
member this.BinarySearch : 'T -> int
Public Function BinarySearch (item As T) As Integer

参数

item
T

要定位的对象。 对于引用类型,该值可以为 null

返回

如果找到项,则为已排序的列表中项的从零开始的索引;否则为一个负数,该负数是大于项的第一个元素的索引的按位求补。如果没有更大的元素,则为 Count 的按位求补。

例外

默认比较器找不到 T 类型的比较器实现。

适用于

BinarySearch(T, IComparer<T>)

Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs

使用指定的比较器在整个已排序的列表中搜索元素,并返回该元素从零开始的索引。

public:
 virtual int BinarySearch(T item, System::Collections::Generic::IComparer<T> ^ comparer);
public:
 int BinarySearch(T item, System::Collections::Generic::IComparer<T> ^ comparer);
public int BinarySearch (T item, System.Collections.Generic.IComparer<T> comparer);
public int BinarySearch (T item, System.Collections.Generic.IComparer<T>? comparer);
abstract member BinarySearch : 'T * System.Collections.Generic.IComparer<'T> -> int
override this.BinarySearch : 'T * System.Collections.Generic.IComparer<'T> -> int
member this.BinarySearch : 'T * System.Collections.Generic.IComparer<'T> -> int
Public Function BinarySearch (item As T, comparer As IComparer(Of T)) As Integer

参数

item
T

要定位的对象。 对于引用类型,该值可以为 null。

comparer
IComparer<T>

比较元素时要使用的比较器实现;null 用于使用默认比较器。

返回

如果找到项,则为已排序的列表中项的从零开始的索引;否则为一个负数,该负数是大于项的第一个元素的索引的按位求补。如果没有更大的元素,则为 Count 的按位求补。

例外

比较器为 null,默认比较器找不到 T 类型的比较器实现。

适用于

BinarySearch(Int32, Int32, T, IComparer<T>)

Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs
Source:
ImmutableList_1.cs

使用指定的比较器在已排序列表的某个元素范围中搜索元素,并返回该元素从零开始的索引。

public:
 virtual int BinarySearch(int index, int count, T item, System::Collections::Generic::IComparer<T> ^ comparer);
public:
 int BinarySearch(int index, int count, T item, System::Collections::Generic::IComparer<T> ^ comparer);
public int BinarySearch (int index, int count, T item, System.Collections.Generic.IComparer<T> comparer);
public int BinarySearch (int index, int count, T item, System.Collections.Generic.IComparer<T>? comparer);
abstract member BinarySearch : int * int * 'T * System.Collections.Generic.IComparer<'T> -> int
override this.BinarySearch : int * int * 'T * System.Collections.Generic.IComparer<'T> -> int
member this.BinarySearch : int * int * 'T * System.Collections.Generic.IComparer<'T> -> int
Public Function BinarySearch (index As Integer, count As Integer, item As T, comparer As IComparer(Of T)) As Integer

参数

index
Int32

要搜索范围的从零开始的起始索引。

count
Int32

要搜索的范围的长度。

item
T

要定位的对象。 对于引用类型,该值可以为 null。

comparer
IComparer<T>

比较元素时要使用的比较器实现,或者为 null,表示使用默认比较器。

返回

如果找到项,则为已排序的列表中项的从零开始的索引;否则为一个负数,该负数是大于项的第一个元素的索引的按位求补。如果没有更大的元素,则为 count 的按位求补。

例外

索引小于 0,或 count小于 0。

索引和 count 不表示列表中的有效范围。

comparernull,默认比较器找不到 T 类型的比较器实现。

适用于