/**
* 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表来说,由于无法...
Google Map API 使用示例
c++MAP使用例子程序,在本人的VS2005使用上通过,对学习使用C++MAP很有用
map map openlayers例子
Android google map API例子
c++中map基本用法和操作的小例子,关于存储和查找的例子。
googleMap折线示例 googleMap折线示例 googleMap折线示例
Java中常用Map测试示例 包含 Map HashMap EnumMap等等
利用google map 进行地址的查询,是入门的示例性代码。
VB.NET不使用API加载Google Map示例
Java 对象属性map排序示例
VB 调用GoogelMap示例 VB控制GoogelMap实现加载地图、控制偏移、添加删除标记点等。 思路: VB调用WebBrowser控件加载本地页面打开GoogelMap。 再调用所打开页面的javascript脚本函数实现定位和添加标注等功能...
java中map简单实例,包含插入,读出,遍历代码。内含map使用实例及HashMap,LinkedHashMap,TreeMap的区别
本文实例讲述了微信小程序使用map组件实现检索(定位位置)周边的POI功能。分享给大家供大家参考,具体如下: 声明 bug: 页面顶部分类【汽车服务、汽车销售等】列表和页脚的详细地址在真机测试是会出现不显示问题? ...
写了一些GOOGLE MAP应用,大家分享
STL map例子 基本操作包括增删改查!
STL的map例子agtbouns STL的map例子agtbouns
Mapobject2.0 与VB结合所开发的例子。
选择各种各样的例子,以充分了解GO地图功能,并建立每一个演示场景在您的智能手机上只要几次点击就可以使用真正的GPS位置.若要商用,请前往Unity官方资源商店重新购资源以获得合法使用权:...