`
aa00aa00
  • 浏览: 332977 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
文章分类
社区版块
存档分类
最新评论

Map使用例子

 
阅读更多

/**
 * aa00aa00
 */
package com.map.test;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class MapTest {

 public static void main(String[] args) {

  // 遍历map
  Map<String, List<User>> map = new HashMap<String, List<User>>();

  List<User> list1 = new ArrayList<User>();
  String[] str = { "01", "02", "03" };
  User user1 = new User("01", "001", "mapqincy1", 24);
  User user2 = new User("01", "002", "mapqincy2", 25);
  User user3 = new User("01", "003", "mapqincy3", 26);

  list1.add(user1);
  list1.add(user2);
  list1.add(user3);
  map.put(str[0], list1);

  List<User> list2 = new ArrayList<User>();
  User user11 = new User("02", "004", "map1qincy1", 24);
  User user12 = new User("02", "005", "map2qincy2", 25);

  list2.add(user11);
  list2.add(user12);

  map.put(str[1], list2);

  List<User> list3 = new ArrayList<User>();
  User user22 = new User("03", "005", "ddd", 34);
  User user23 = new User("03", "006", "eee", 35);
  User user24 = new User("03", "007", "fff", 36);

  list3.add(user22);
  list3.add(user23);
  list3.add(user24);
  map.put(str[2], list3);
  // 得到map所有key值,放到set集合中
  Set set = map.keySet();
  // 对Set集合进行遍历循环
  Iterator<String> iterator = set.iterator();
  // 进行循环遍历
  while (iterator.hasNext()) {
   String key = iterator.next();// 将获取的键引用进行强制类型转换
   List<User> list = new ArrayList<User>();
   list = map.get(key);// 通过键获取相应的值
   Iterator<User> it = list.iterator();
   while (it.hasNext()) {
    User user = new User();
    user = it.next();
    // System.out.println(key + "键:" + user.getNumber() + "值:学号"
    // + user.getXh() + "姓名" + user.getName() + "年龄"
    // + user.getAge());// 打印键、值的情况
   }
  }

  // 准备数据
  Map<String, User> maptest = new HashMap<String, User>();
  User user31 = new User("03", "005", "ddd", 34);
  User user32 = new User("03", "006", "eee", 35);
  User user33 = new User("03", "007", "fff", 36);

  maptest.put("1001", user31);
  maptest.put("1002", user32);
  maptest.put("1003", user33);

  Map<String, User> subMap = new HashMap<String, User>();
  subMap.put("1008", new User("tom", "1008", "fdf", 12));
  subMap.put("1009", new User("jerry", "1009", "dfdf", 10));
  maptest.putAll(subMap);

  workByEntry(maptest);
  workByEntry1(maptest);
 }

 // 使用Map.Entry遍历map
 public static void workByEntry(Map<String, User> map) {
  // Set<Map.Entry<String, User>> set = map.entrySet();
  // for (Iterator<Map.Entry<String, User>> it = set.iterator(); it
  // .hasNext();) {
  // Map.Entry<String, User> entry = (Map.Entry<String, User>) it.next();
  // System.out.println(entry.getKey() + "键:"
  // + entry.getValue().getNumber() + "值:学号"
  // + entry.getValue().getXh() + "姓名"
  // + entry.getValue().getName() + "年龄"
  // + entry.getValue().getAge());// 打印键、值的情况
 }

 // 使用keySet遍历map
 public static void workByEntry1(Map<String, User> map) {
  Set set = map.keySet();
  // 对Set集合进行遍历循环
  Iterator<String> iterator = set.iterator();
  while (iterator.hasNext()) {
   String key = iterator.next();
   User user = map.get(key);
   System.out.println(key + "键值:" + user.getNumber() + "学号"
     + user.getXh() + "姓名" + user.getName() + "年龄"
     + user.getAge());// 打印键、值的情况
  }
 }
}

分享到:
评论

相关推荐

    C++中的哈希容器unordered_map使用示例

    很久以来,STL中都只提供&lt;map&gt;作为存放对应关系的容器,内部通常用红黑树实现,据说原因是二叉平衡树(如红黑树)的各种操作,插入、删除、查找等,都是稳定的时间复杂度,即O(log n);但是对于hash表来说,由于无法...

    c++MAP使用类

    在本案例中,"c++MAP使用例子程序"是一个在Visual Studio 2005环境下通过编译并运行的示例,旨在帮助学习者理解如何在C++中有效使用`std::map`。 `std::map`的基本操作包括插入元素、查找元素、删除元素以及迭代器...

    Google Map API 使用示例

    本示例将深入探讨如何使用 Google Map API,帮助你理解和掌握其核心概念及应用。 首先,要使用 Google Map API,你需要在 Google Cloud Platform 上创建一个项目,并启用 Maps JavaScript API。获取 API 密钥是关键...

    Map,HashMap,TreeMap的使用

    以下是一个简单的 Map 使用示例代码: ```java package com.lrm.study.testcase; import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Map; import java....

    C++map使用小例子

    在本示例中,“C++map使用小例子”提供了关于如何在C++程序中使用`std::map`的基本操作和应用。 `std::map`的主要特点和操作包括: 1. **插入元素**:可以使用`insert`函数或直接使用下标运算符`[]`来插入键值对。...

    map map openlayers例子

    对于压缩包中的"Map"文件,可能包含的是示例代码、样式文件(CSS)或其他资源,用于扩展或修改上述基本地图的例子。如果其中包含了额外的图层数据(如GeoJSON、KML),我们可以利用OpenLayers的`ol.format`类解析...

    Android google map API例子

    Android google map API例子

    classMap的使用

    在给定的代码示例中,我们看到一个名为`createMap`的函数,其中创建了一个新的`classMap`实例,并使用`setAt`方法设置了一些键值对。接下来,我们将详细探讨`classMap`的使用、它的功能以及如何在JavaScript中实现...

    C++ map使用

    `map`容器内部使用红黑树(Red-Black Tree)数据结构实现,这保证了其插入、删除和查找操作的时间复杂度为O(log N)。这意味着即使在大量数据中,`map`也能快速定位到特定元素。在`map`中,每个元素都是一个键值对,...

    GOOGLE MAPapi示例

    ### GOOGLE MAP API 示例知识点解析 #### 一、Google Maps JavaScript API 概述 Google Maps JavaScript API 是一个功能强大的工具包,允许开发者将交互式的地图嵌入到网页中。通过使用这个API,开发者可以轻松地...

    rammap自动运行程序

    RAMMap是一款强大的内存分析工具,由微软的 Sysinternals 团队开发,主要用于分析和理解操作系统的内存使用情况。这个工具能够帮助用户深入洞察系统内存的分配和使用,包括物理内存、分页文件以及系统缓存等。在标题...

    java中map的使用实例

    本篇文章将深入讲解Map的使用实例,包括插入、读取和遍历操作,以及HashMap、LinkedHashMap和TreeMap这三种常见的Map实现类之间的区别。 首先,让我们看看如何创建和插入键值对。在Java中,我们通常通过调用`put()`...

    Java 对象属性map排序示例

    本示例将详细介绍如何对Java对象属性Map进行排序。 首先,了解Map的基本类型。Java提供了HashMap、TreeMap等实现Map接口的类。HashMap是非排序的,而TreeMap是基于红黑树数据结构,会按照键的自然顺序或者自定义...

    Mapobject开发例子

    MapObject中文学习指南可能涵盖了MapObject的基本概念、API使用、VB集成教程、示例代码解析等内容,帮助初学者快速上手MapObject的开发工作。通过阅读这份指南,开发者可以深入理解MapObject的功能特性,学会如何在...

    STL map例子

    在本例子中,我们将深入探讨`map`的基本操作,包括插入元素、删除元素、修改元素以及查询元素。 1. **创建和初始化map** 在C++中,我们可以通过`std::map`声明一个空的map容器,例如: ```cpp std::map, std::...

    google map 查询示例

    利用google map 进行地址的查询,是入门的示例性代码。

    echarts map-geo 使用实例

    本文将深入探讨如何使用 ECharts 的 `map` 与 `geo` 组件,以及它们在实际应用中的效果。 首先,`map` 类型的图表允许我们在地图上展示数据,它内置了多种世界和中国地图的配置,可以直接调用。而 `geo` 组件则提供...

    Java中常用Map测试示例

    本示例将深入探讨Java中常用的`Map`实现,包括`HashMap`和`EnumMap`。 首先,`Map`接口定义了一些基本操作,如`put`用于添加键值对,`get`用于获取与给定键关联的值,`remove`用于移除键值对,以及`size`用于返回...

    M_map1.4j工具箱官方中文版使用说明及示例_m_map1.4_m_map_m_map官网_matlab_matlabmap

    《M_map1.4j工具箱官方中文版使用说明及示例》是针对MATLAB用户的一个专业地图绘制工具——m_map的详细指南。m_map工具箱是MATLAB环境中的一个强大扩展,它允许用户在MATLAB中进行地理信息系统(GIS)相关的数据处理...

Global site tag (gtag.js) - Google Analytics