Java-util-arrays-binarysearch-object

提供:Dev Guides
移動先:案内検索

Java.util.Arrays.binarySearch()メソッド

説明

  • java.util.Arrays.binarySearch(Object [] a、Object key)*メソッドは、バイナリ検索アルゴリズムを使用して、指定されたオブジェクトの指定された配列を検索します。この呼び出しを行います。 ソートされていない場合、結果は未定義です。

宣言

以下は* java.util.Arrays.binarySearch()*メソッドの宣言です

public static int binarySearch(Object[] a, Object key)

パラメーター

  • a -これは検索される配列です。
  • キー-これは検索する値です。

戻り値

このメソッドは、配列に含まれている場合は検索キーのインデックスを返し、そうでない場合は(-(挿入ポイント)-1)を返します。 挿入ポイントは、キーが配列に挿入されるポイントです。キーより大きい最初の要素のインデックス、または配列内のすべての要素が指定されたキーより小さい場合はa.lengthです。

例外

*ClassCastException* -検索キーが配列の要素と比較できない場合。

次の例は、java.util.Arrays.binarySearch()メソッドの使用方法を示しています。

package com.finddevguides;

import java.util.Arrays;

public class ArrayDemo {
   public static void main(String[] args) {

     //initializing unsorted array
      Object arr[] = {10,2,22,69};

     //sorting array
      Arrays.sort(arr);

     //let us print all the elements available
      System.out.println("The sorted array is:");
      for (Object number : arr) {
         System.out.println("Number = " + number);
      }

     //entering the value to be searched
      int searchVal = 22;

      int retVal = Arrays.binarySearch(arr,searchVal);

      System.out.println("The index of element 22 is : " + retVal);
   }
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

The sorted array is:
Number = 2
Number = 10
Number = 22
Number = 69
The index of element 22 is : 2