データ配列に適したデータ構造を見つけようとしました。挿入操作(リストの途中に挿入)をサポートするものを好みます。
そのような Java 組み込みデータ構造がない場合、実装する良い方法は何ですか?
たとえばArrayList<String>
、リストの途中での挿入をサポートしていないように見える を使用する場合、 を適切に実装するinsert(int pos, String str)
にはどうすればよいですか?
データ配列に適したデータ構造を見つけようとしました。挿入操作(リストの途中に挿入)をサポートするものを好みます。
そのような Java 組み込みデータ構造がない場合、実装する良い方法は何ですか?
たとえばArrayList<String>
、リストの途中での挿入をサポートしていないように見える を使用する場合、 を適切に実装するinsert(int pos, String str)
にはどうすればよいですか?
メソッドを確認してください(実装するインターフェースでArrayList.add
宣言されています)List
ArrayList
このリストの指定された位置に、指定された要素を挿入します。現在その位置にある要素 (存在する場合) と後続の要素を右にシフトします (インデックスに 1 を追加します)。
Listを実装するすべてのクラスは、必要なことを行うことができます。
特定のインデックスにオブジェクトを挿入するList.add()を見てください。
既存のアイテムを置き換えたい場合は、 List.set()を確認してください。
add()メソッドは List インターフェイスの一部です...
ただし、Bhesh Gurung の回答の下のコメントが示唆するように、すべてのリストがサポートしているわけではありません。
したがって、私はBhesh Gurungの答えに行きます(あなたがすでに持っているように)。
ArrayList と比較して、リストの途中に挿入するパフォーマンスが向上するLinkedList add(int, E)メソッドを確認する必要があると思います。