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

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

Java(SE) API 逆引き辞典

:: reverse dictionary ::

データ構造 <リスト>

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

◎各マークの意味
Pbpubic Prprotected Sstatic


リストから指定の要素を検索する

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

≪宣言≫

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
List list = new ArrayList();
list.add("Linux");
list.add("Windows");
list.add("FreeBSD");
list.add("Solaris");

// 検索前のソート(必須)
Collections.sort(list);

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

// 要素を検索
int indexWin = Collections.binarySearch(list, "Windows");
int indexLin = Collections.binarySearch(list, "Linux");
int indexSol = Collections.binarySearch(list, "Solaris");
int indexBSD = Collections.binarySearch(list, "FreeBSD");
int indexAIX = Collections.binarySearch(list, "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);

ソースファイル

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

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

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

▼ メソッド

java.util.Collections
PbS int binarySearch(List l, Object e)

リスト l から要素 e を検索します。

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

●引数

l … 要素を検索するリスト
e … 検索する要素

●戻り値

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

●重要

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

注目キーワード ベスト5

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

データ構造 <リスト> - list -


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

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