binarySearch(List<? extends T>, T, Comparator<? super T>) 方法用於搜尋指定列表,使用二進位制搜尋演算法來指定物件。該列表必須根據指定的比較器按升序排列。
以下是java.util.Collections.binarySearch()方法的宣告。
public static <T> int binarySearch(List<? extends T> list,T key,Comparator<? super T> c)
list--這是要搜尋的列表。
key--這是要搜尋的鍵。
c--這是該列表進行排序的比較。 null值指示該元素的自然順序會被使用。
在方法呼叫返回的搜尋鍵的索引,如果它被包含在列表中。
ClassCastException--這被丟擲,如果列表中包含不可相互比較的元素使用指定的比較。
下面的例子顯示java.util.Collections.binarySearch()方法的使用
package com.yiibai; import java.util.*; public class CollectionsDemo { public static void main(String args[]) { // create arraylist ArrayList<String> arlst=new ArrayList<String>(); // populate the list arlst.add("TP"); arlst.add("PROVIDES"); arlst.add("QUALITY"); arlst.add("TUTORIALS"); // search for key 'TUTORIALS' with natural ordering int index=Collections.binarySearch(arlst, "TUTORIALS", null); System.out.println("'TUTORIALS' is available at index: "+index); } }
Let us compile and run the above program, this will produce the following result.
'TUTORIALS' is available at index: 3