有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

关于散列、键和值迭代器的java

hashMap中的hash迭代器、key迭代器和value迭代器是什么?除了普通迭代器之外,它们还有什么功能?假设我有一个hash map

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");

这些新的迭代器为我提供了什么样的功能

Please see it


共 (2) 个答案

  1. # 1 楼答案

    地图的结果。keySet()和Map。values()是所谓的集合视图(例如,如果您有一个包含两列的SQL表,并且为每列创建了一个单独的视图)。使用。keySet()您将获得地图中所有键的可编辑集合视图。虽然values()使您能够迭代相应的值

    当你操作HashMap和数组、ArrayList或类似集合时,它们非常方便。这里我列出了一个简单的Java EE示例,它从请求中检索Cookie[]数组,然后将Cookie映射存储到HashMap:

    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和迭代的一个小例子,重要的是调整映射的可能性,使其能够像其他集合一样循环使用,这意味着将它们带到程序员使用的更常见、更易于操作的状态

  2. # 2 楼答案

    键集()。迭代器()迭代键和值()。迭代器()对值和entrySet()进行迭代。迭代器()对键/值项进行交互

    地图没有其他迭代器

    What functionality these new iterator offers me

    它们是在Java1.2(1998)中添加的,所以它们并不是那么新