java.util.Collections.binarySearch(List<? extends T>, T, Comparator<? super T>)方法範例


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