ArrayListで最後に追加された要素を取得するにはどうすればよいですか。これは最後の要素を取得する方法を説明していると思いますが、最後に追加された要素は常に最後の要素ですか?
質問する
20729 次
3 に答える
13
はい、他の人が言ったように、ArrayList
挿入順序を保持します。最後に追加した要素が必要な場合は(常に要素を追加する場合のみadd(element)
)、次のように入力します。
yourArrayList.get(yourArrayList.size()-1);
あなたの答えはあなたが言ったリンクにあります:)
于 2012-09-19T11:11:14.660 に答える
4
はいArrayList
、挿入順序を保持します
indexを指定して特定の位置に要素を明示的に追加するadd()
場合、この場合、ArrayList実装をカスタマイズして挿入時間を設定する必要があり、最後に挿入された要素を取得するときに、その時間を計算で考慮します。
または、 Marko Topolnikが提案したように、最後に挿入されたアイテムを指す参照があり、 削除時にも維持することをお勧めします
LinkedHashSet
セットの一意性プロパティを気にしない場合は、使用する方が良いでしょう。
于 2012-09-19T10:15:55.987 に答える
1
add(element)
署名を使用している場合、最後の要素はArrayList
常に最後に挿入された要素になります。
あなたが使用している場合、あなたadd(index, element)
は最後のものがどれであるかを正確に知ることはできません。そのサブクラスを作成する最も簡単なソリューションは、ArrayList
最後に挿入された要素を特別な変数に保持します。
于 2012-09-19T10:22:11.980 に答える