私はJavaのリストの戻り値に困惑しています。Javaのリストの困った返り値
add
やremove
などの操作では、追加または削除された要素のインデックスを返すことが期待されていましたが、成功した場合はtrueを返します。私は(それは高価ではないと思う)size
-1を呼び出し、このIDを取得することがありadd
との間
は、remove
と私は私には、廃棄物のように見えた、indexOf
を呼び出す必要があります。
何か不足していますか?
私はJavaのリストの戻り値に困惑しています。Javaのリストの困った返り値
add
やremove
などの操作では、追加または削除された要素のインデックスを返すことが期待されていましたが、成功した場合はtrueを返します。私は(それは高価ではないと思う)size
-1を呼び出し、このIDを取得することがありadd
との間
は、remove
と私は私には、廃棄物のように見えた、indexOf
を呼び出す必要があります。
何か不足していますか?
を使用して追加し、removigについて私は説明がaddとremoveがCollectionインターフェイス上にあるので、彼らは、リストベースのデータ構造と同様に設定し
地図
に適用されることと思われるもの。
また、 'List'の実装はソートされたリストかもしれません。 –
私にそれを打つ、私は私の答えを削除します。具体的には、マップとセットには一般に順序付けや「インデックス」という概念がありません。 – user949300
[Map](http://download.oracle.com/javase/6/docs/api/index.html?java/util/Map.html)インタフェースは 'Collection'を拡張せず、addメソッドもありません。 – orien
インデックス
はい、indexOf(Object obj)を使用してインデックスを取得し、次にremove(int i)を呼び出します。今あなたはインデックスを持っています。 ArrayListを使用する場合、これは非効率的ではありません。 – Kevin
おそらく、リストは必要なデータ構造ではありません。なぜこれが厄介なのかという例が役立ちます。 – Emma
削除後、その項目はリストにないので、索引は実際には意味をなさない。 –
@緊張:そうではありませんが、私は外国のコードを編集していますが、これは私がこの状況で行うことができる最小限の破壊的な修正のようです。 –