J2SE の API を目的別に調べることができる辞典

ホーム > Java(SE) API 逆引き辞典 > データ構造 <配列> > 配列から指定の要素を検索する

Java(SE) API 逆引き辞典

:: reverse dictionary ::

データ構造 <配列>

※ソースファイルについて

◎各マークの意味
Pbpubic Prprotected Sstatic


配列から指定の要素を検索する

配列から指定の要素を検索するには、Arrays クラスの binarySearch メソッドを使います。

≪宣言≫

import java.util.Arrays;
// 検索するデータ
String[] systems = new String[] {
      "Linux"
    , "Windows"
    , "FreeBSD"
    , "Solaris"
};

// 検索前のソート(必須)
Arrays.sort(systems);

System.out.println("▼ソートした結果");
for (int i = 0; i < systems.length; i++) {
  System.out.println("systems[" + i + "]=" + systems[i]);
}

// 要素を検索
int indexWin = Arrays.binarySearch(systems, "Windows");
int indexLin = Arrays.binarySearch(systems, "Linux");
int indexSol = Arrays.binarySearch(systems, "Solaris");
int indexBSD = Arrays.binarySearch(systems, "FreeBSD");
int indexAIX = Arrays.binarySearch(systems, "AIX");

System.out.println();
System.out.println("indexWin=" + indexWin);
System.out.println("indexLin=" + indexLin);
System.out.println("indexSol=" + indexSol);
System.out.println("indexBSD=" + indexBSD);
System.out.println("indexAIX=" + indexAIX);

ソースファイル

次のような出力になります。

▼ソートした結果
systems[0]=FreeBSD
systems[1]=Linux
systems[2]=Solaris
systems[3]=Windows

indexWin=3
indexLin=1
indexSol=2
indexBSD=0
indexAIX=-1

▼ メソッド

java.util.Arrays
PbS int binarySearch(boolean[] a, boolean e)
PbS int binarySearch(byte[] a, byte e)
PbS int binarySearch(char[] a, char e)
PbS int binarySearch(double[] a, double e)
PbS int binarySearch(float[] a, float e)
PbS int binarySearch(int[] a, int e)
PbS int binarySearch(long[] a, long e)
PbS int binarySearch(Object[] a, Object e)

配列 a から要素 e を検索します。

要素 e が見つかった場合は、そのインデックスを返します。
要素 e が見つからなかった場合は、マイナスの値を返します。

●引数

a … 要素を検索する配列
e … 検索する要素

●戻り値

・要素 e が見つかった … 要素の配列インデックス
・要素 e が見つからなかった … マイナスの値

●重要

正確な検索結果を得るためには binarySearch メソッドを呼び出す前に、必ず sort メソッドで配列の要素をソートする必要があります。

注目キーワード ベスト5

  1. セキュリティ
  2. ホスティング
  3. レンタルサーバ
  4. ファイル復旧
  5. ハードディスク修復

データ構造 <配列> - array -


ホーム > Java(SE) API 逆引き辞典 > データ構造 <配列> > 配列から指定の要素を検索する

Copyright (C) 2005-2007 Noto Watabe. All rights reserved.
e-mail:wmh@always-pg.com