マップにObjectListを挿入しました。12番目のインデックスの最初のレコードを挿入するハッシュマップ
最初の挿入は12番目のインデックスで行われています。
HashMapのデフォルトサイズは16であるため、最初のインデックスに4番目のレコードが挿入されています(インデックスが最後に到達したため16番目を意味します)。
私は間違った順序になっています。
でも、私はLinkedHashMap
で試しました。同じ結果が来ている。
for (Type object: Objects) {
map.put(object.obj.getId() , object);
}
は、この問題を解決するために私を助けてください:
そしてここでは私のコードです。
ありがとうございました。
どのようなご注文を予定していますか? HashMapには順序はありませんか? LinkedHashMapは挿入命令を提供します。キーを並べ替えるには、TreeMapを使います。 – Eran
@Eran 6つのレコードをマップに挿入しています。挿入は12番目のインデックスから開始されます。 (私はそれをデバッグすることによって見た。)しかし、私は最初からそれが欲しい。 –
インデックスを制御することはありません(少なくとも直接はできません)。インデックスは 'hashCode'に基づいて決定されます。とにかくインデックスを気にするべきではありません。 – Eran