次のように宣言されたマップがあります-
Map<Date, Long[]> myMap = new TreeMap<Date, Long[]>();
そのマップにいくつかのキーと値のペアを入れ、次のようにサイズを確認します-
myMap.size(); //returns 29
myMap.values().size(); //returns 31
すべての日付(キー)は異なります。
これらの2つは同じ値を返すはずではありませんか?
TreeMapのvalues()メソッド(少なくともJDK 6)によって返されるコレクションのサイズは次のとおりです。
public int size() {
return TreeMap.this.size();
}
2つのsize()
呼び出しの間にマップに新しいエントリを追加する何かがあると思います。明確にするために、map.values().size()
代理人はにいmap.size()
ます。したがって、同じ内容の同じマップに対して2つの異なる値を返すことはできません。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加