/**
* 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());// 打印键、值的情况
}
}
}
分享到:
相关推荐
很久以来,STL中都只提供<map>作为存放对应关系的容器,内部通常用红黑树实现,据说原因是二叉平衡树(如红黑树)的各种操作,插入、删除、查找等,都是稳定的时间复杂度,即O(log n);但是对于hash表来说,由于无法...
在本案例中,"c++MAP使用例子程序"是一个在Visual Studio 2005环境下通过编译并运行的示例,旨在帮助学习者理解如何在C++中有效使用`std::map`。 `std::map`的基本操作包括插入元素、查找元素、删除元素以及迭代器...
本示例将深入探讨如何使用 Google Map API,帮助你理解和掌握其核心概念及应用。 首先,要使用 Google Map API,你需要在 Google Cloud Platform 上创建一个项目,并启用 Maps JavaScript API。获取 API 密钥是关键...
以下是一个简单的 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++程序中使用`std::map`的基本操作和应用。 `std::map`的主要特点和操作包括: 1. **插入元素**:可以使用`insert`函数或直接使用下标运算符`[]`来插入键值对。...
对于压缩包中的"Map"文件,可能包含的是示例代码、样式文件(CSS)或其他资源,用于扩展或修改上述基本地图的例子。如果其中包含了额外的图层数据(如GeoJSON、KML),我们可以利用OpenLayers的`ol.format`类解析...
Android google map API例子
在给定的代码示例中,我们看到一个名为`createMap`的函数,其中创建了一个新的`classMap`实例,并使用`setAt`方法设置了一些键值对。接下来,我们将详细探讨`classMap`的使用、它的功能以及如何在JavaScript中实现...
`map`容器内部使用红黑树(Red-Black Tree)数据结构实现,这保证了其插入、删除和查找操作的时间复杂度为O(log N)。这意味着即使在大量数据中,`map`也能快速定位到特定元素。在`map`中,每个元素都是一个键值对,...
### GOOGLE MAP API 示例知识点解析 #### 一、Google Maps JavaScript API 概述 Google Maps JavaScript API 是一个功能强大的工具包,允许开发者将交互式的地图嵌入到网页中。通过使用这个API,开发者可以轻松地...
RAMMap是一款强大的内存分析工具,由微软的 Sysinternals 团队开发,主要用于分析和理解操作系统的内存使用情况。这个工具能够帮助用户深入洞察系统内存的分配和使用,包括物理内存、分页文件以及系统缓存等。在标题...
本篇文章将深入讲解Map的使用实例,包括插入、读取和遍历操作,以及HashMap、LinkedHashMap和TreeMap这三种常见的Map实现类之间的区别。 首先,让我们看看如何创建和插入键值对。在Java中,我们通常通过调用`put()`...
本示例将详细介绍如何对Java对象属性Map进行排序。 首先,了解Map的基本类型。Java提供了HashMap、TreeMap等实现Map接口的类。HashMap是非排序的,而TreeMap是基于红黑树数据结构,会按照键的自然顺序或者自定义...
MapObject中文学习指南可能涵盖了MapObject的基本概念、API使用、VB集成教程、示例代码解析等内容,帮助初学者快速上手MapObject的开发工作。通过阅读这份指南,开发者可以深入理解MapObject的功能特性,学会如何在...
在本例子中,我们将深入探讨`map`的基本操作,包括插入元素、删除元素、修改元素以及查询元素。 1. **创建和初始化map** 在C++中,我们可以通过`std::map`声明一个空的map容器,例如: ```cpp std::map, std::...
利用google map 进行地址的查询,是入门的示例性代码。
本文将深入探讨如何使用 ECharts 的 `map` 与 `geo` 组件,以及它们在实际应用中的效果。 首先,`map` 类型的图表允许我们在地图上展示数据,它内置了多种世界和中国地图的配置,可以直接调用。而 `geo` 组件则提供...
本示例将深入探讨Java中常用的`Map`实现,包括`HashMap`和`EnumMap`。 首先,`Map`接口定义了一些基本操作,如`put`用于添加键值对,`get`用于获取与给定键关联的值,`remove`用于移除键值对,以及`size`用于返回...
《M_map1.4j工具箱官方中文版使用说明及示例》是针对MATLAB用户的一个专业地图绘制工具——m_map的详细指南。m_map工具箱是MATLAB环境中的一个强大扩展,它允许用户在MATLAB中进行地理信息系统(GIS)相关的数据处理...