Map.keySet()およびMap.values()の結果は、コレクションビューと呼ばれるものです(2つの列を持つSQLテーブルがあり、列ごとに個別のビューを作成した場合など)。.keySet()を使用すると、マップ内のすべてのキーの反復可能なコレクションビューを取得できます。一方、.values()を使用すると、対応する値を反復処理できます。
これらは、HashMapをArrayまたはArrayListまたは同様のコレクションと一緒に操作する場合に非常に便利です。ここに、リクエストからCookie []配列を取得し、CookieをHashMapにマップする簡単なJavaEEの例を示します。
Cookie[] cookies = request.getCookies();
HashMap<String,String> map = new HashMap<String,String>();
for(Cookie cookie : cookies)
{
map.put(cookie.getKey(), cookie.getValue());
}
//Later if you just wanna check the keys of cookies that are available
Set<String> keys = map.keySet();
Iterator<String> it = keys.iterator();
while(it.hasNext())
{
String currentElement = it.next();
System.out.println("key = " + currentElement);
}
とにかく、これはHashMapと実際の反復のほんの一例でしたが、重要なのは、マップを微調整し、他のコレクションのようにマップを循環できるようにすることです。つまり、プログラマーが使用するより一般的で操作しやすい状態にすることができます。