Collections.BinarySearch 方法

定义

重载

BinarySearch(IList, Object)

使用二进制搜索算法搜索指定对象的指定列表。

BinarySearch(IList, Object, IComparator)

使用二进制搜索算法搜索指定对象的指定列表。

BinarySearch(IList, Object)

使用二进制搜索算法搜索指定对象的指定列表。

[Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;)I", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static int BinarySearch (System.Collections.IList list, Java.Lang.Object key);
[<Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;)I", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member BinarySearch : System.Collections.IList * Java.Lang.Object -> int

参数

list
IList

要搜索的列表。

key
Object

要搜索的键。

返回

搜索键的索引(如果它包含在列表中);否则,为 (-(<i>insertion point</i>) - 1). 插入点定义为将键插入列表的点:大于键的第一个元素的索引,或者list.size()列表中所有元素都小于指定键。 请注意,这可以保证返回值在找到密钥时才为 0。

属性

注解

使用二进制搜索算法搜索指定对象的指定列表。 在进行此调用之前,列表必须按照元素的可比自然顺序(如 #sort(List) 方法)排序为升序。 如果未排序,则结果未定义。 如果列表包含等于指定对象的多个元素,则不能保证将找到哪个元素。

此方法在 log(n) 时间中运行“随机访问”列表(它提供近常量时间位置访问)。 如果指定的列表未实现 RandomAccess 接口并且很大,此方法将执行基于迭代器的二进制搜索,以执行 O(n) 链接遍历和 O(log n) 元素比较。

适用于 . 的 java.util.Collections.binarySearch(java.util.List<? extends java.lang.Comparable<? super T>>, T)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

BinarySearch(IList, Object, IComparator)

使用二进制搜索算法搜索指定对象的指定列表。

[Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I", "")]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public static int BinarySearch (System.Collections.IList list, Java.Lang.Object? key, Java.Util.IComparator? c);
[<Android.Runtime.Register("binarySearch", "(Ljava/util/List;Ljava/lang/Object;Ljava/util/Comparator;)I", "")>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
static member BinarySearch : System.Collections.IList * Java.Lang.Object * Java.Util.IComparator -> int

参数

list
IList

要搜索的列表。

key
Object

要搜索的键。

c
IComparator

列出排序依据的比较器。 一个 null 值指示应使用元素的可比较自然排序。

返回

搜索键的索引(如果它包含在列表中);否则,为 (-(<i>insertion point</i>) - 1). 插入点定义为将键插入列表的点:大于键的第一个元素的索引,或者list.size()列表中所有元素都小于指定键。 请注意,这可以保证返回值在找到密钥时才为 0。

属性

注解

使用二进制搜索算法搜索指定对象的指定列表。 在进行此调用之前,必须根据指定的比较器(如 #sort(List, Comparator) sort(List, Comparator) 方法)将列表排序为升序。 如果未排序,则结果未定义。 如果列表包含等于指定对象的多个元素,则不能保证将找到哪个元素。

此方法在 log(n) 时间中运行“随机访问”列表(它提供近常量时间位置访问)。 如果指定的列表未实现 RandomAccess 接口并且很大,此方法将执行基于迭代器的二进制搜索,以执行 O(n) 链接遍历和 O(log n) 元素比较。

适用于 . 的 java.util.Collections.binarySearch(java.util.List<? extends T>, T, java.util.Comparator<? super T>)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于