-2

hashMap の hash iterator 、 key iterator 、 value iterator とは何か、通常の iterator 以外のそれらの機能は何か、ハッシュマップがあるとしましょう..

Map map=new HashMap();//HashMap key random order.
      //   System.out.println("Amit".hashCode());
         map.put("Amit","Java");
         map.put("Amit","Javas");
        // map.put("mAit","J2EE");

これらの新しいイテレータが私に提供する機能..!

見てください

4

2 に答える 2

1

keySet().iterator() はキーを反復し、values().iterator() は値を反復し、entrySet().iterator() はキー/値エントリを反復します。

マップには他の反復子はありません。

これらの新しいイテレータが提供する機能

これらは Java 1.2 (1998) で追加されたため、それほど新しいものではありません。;)

于 2012-08-08T17:28:53.617 に答える
0

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と実際の反復のほんの一例でしたが、重要なのは、マップを微調整し、他のコレクションのようにマップを循環できるようにすることです。つまり、プログラマーが使用するより一般的で操作しやすい状態にすることができます。

于 2012-08-08T17:45:32.337 に答える