位置:首頁 > Java技術 > Java.util包 > java.util.Collections.binarySearch(List<? extends T>, T, Comparator<? super T>)方法實例

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