私が使用するアイテムを追加するために
public void add(Object s) {
list.add(s);
}
私が使用するアイテムを削除するために
public void remove(Object s) {
list.remove(s);
}
ドット演算子を使用して組み込みのAPIを検索LinkedList
すると、検索機能を示唆するものは何も表示されません。でしょうcontains
か?
私が使用するアイテムを追加するために
public void add(Object s) {
list.add(s);
}
私が使用するアイテムを削除するために
public void remove(Object s) {
list.remove(s);
}
ドット演算子を使用して組み込みのAPIを検索LinkedList
すると、検索機能を示唆するものは何も表示されません。でしょうcontains
か?
はい、LinkedList APIのcontainstrue
メソッドは、検索要素が含まれている場合に返されます。
はい、検索にはこのcontains
方法を使用します。ただし、LinkedListの検索にはO(n)時間がかかることに注意してください。つまり、時間はリストのサイズに直線的に依存するため、リストが大きく、多くの検索を行う場合は、他のデータを使用することをお勧めします。構造。たとえば、次のようにリストを初期化する必要があります。
Collection something = new LinkedList();
次に、検索操作のパフォーマンスがプログラムに悪影響を及ぼしていることがわかった場合は、代わりに次のようにします。
Collection something = new LinkedHashSet();
より洗練された検索には、リストやその他のコレクションの代わりにマップを使用する必要がありますが、これはまったく異なるデータ構造です。
はい、contains
です。より洗練されたものが必要な場合は、独自の実装を作成するLinkedList
か、いくつかのユーティリティ関数を考え出す必要があります。
contains(Object)
確かにあなたが探しているものです。Collections.binarysearch(List, T)
リストが昇順でソートされている場合にも使用できます。
次のコードサンプルはあなたに理解させるでしょう
// Assuming that we java imported java.util.LinkedList........
LinkedList ll =new LinkedList();
ll.add("red");
ll.add("blue");
ll.get(0); // gets the first element.........
ll.getFirst(); // returns the first element..
ll.getLast(); // returns the last element....
int position = ll.indexOf("red");
boolean status;
status= ll.contains("red"); // returns true if list contains red or returns false....