章节七、6-Map集合的区别
一、通过entrySet取出Map中的元素
package ZangJie7; import java.util.HashMap;
import java.util.Map; public class MapsIteration { public static void main(String[] args) {
// HashMap不保证有序
Map<Integer,String> hashMap = new HashMap<Integer,String>();
hashMap.put(1,"BwM");
hashMap.put(6,"AuDi");
hashMap.put(4,"HonDo"); /* 如何取出Map中的元素?
Mao中有键值对的映射关系,可以用Entery来取出集合中元素,Entery是Map集合中的方法,
这个方法返回的是Map方法中包含的映射关系的set集合,返回的是一个set集合,用高级for循环可以
遍历set集合
*/
// Map集合不能直接用高级for来取出所有元素,只能通过调用他里面的方法返回set集合,然后再遍历set集合 for(Map.Entry<Integer,String> entry:hashMap.entrySet()) { // 定义一个变量来接收键值对中的键,int是键的返回值类型,类型的数据接收时就需要用相同的类型来接收
// getKey()方法用来返回键值对中的键
int key = entry.getKey();
// 返回键值对映射关系中的值
String value = entry.getValue();
System.out.println("键"+key+"值"+value);
} } }
返回结果为:

二、通过keySet取出Mao集合中的值
package ZangJie7; import java.util.HashMap;
import java.util.Map; public class MapsIteration { public static void main(String[] args) {
// HashMap不保证有序
Map<Integer,String> hashMap = new HashMap<Integer,String>();
hashMap.put(1,"BwM");
hashMap.put(6,"AuDi");
hashMap.put(4,"HonDo"); // 通过keySet取出集合中的值:
// 通过这个方法可以取出集合中所有的键,放到set中,然后用高级for循环来遍历这些键
for(Integer key:hashMap.keySet()) {
// key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值
String value = hashMap.get(key);
System.out.println("键"+key+"值"+value); } } }
运行结果为:

三、LinkHashMap
// LinkedHashMap可以保证有序,怎么存值就怎么取值
Map<Integer,String> leHashMap = new LinkedHashMap<Integer,String>();
leHashMap.put(1,"BwM");
leHashMap.put(6,"AuDi");
leHashMap.put(4,"HonDo");
for(Integer key:leHashMap.keySet()) {
// key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值
String value = leHashMap.get(key);
System.out.println("键"+key+"值"+value);
}
运行结果为:

四、TreeMap
// TreeMap自然排序,对Map集合中的键进行排序
Map<Integer,String> tMap = new TreeMap<Integer,String>();
tMap.put(1,"BwM");
tMap.put(6,"AuDi");
tMap.put(4,"HonDo");
for(Integer key:tMap.keySet()) {
// key存的是keySet()中的键,变量名就叫key,所以在下面的“.get(key)”中传的就是key,这样就能够通过键取出对应的值
String value = tMap.get(key);
System.out.println("键"+key+"值"+value);
}
运行结果为:

五、HashMap、LinkeHashMap、TreeMap的区别
1、HashMap数据结构是hash表结构,不保证有序,允许有空键空值
2、TreeMap自然排序方式,可以都Map集合中的键进行排序
3、LinkeHashMap怎么存就怎么取,顺序一致
章节七、6-Map集合的区别的更多相关文章
- Map集合及与Collection的区别、HashMap和HashTable的区别、Collections、
特点:将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值. Map集合和Collection集合的区别 Map集合:成对出现 (情侣) ...
- lodash 集合处理方法 map和filter区别
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- HashMap,ConcurrentHashMap原理。Collection(list,set,map集合区别)。和CAS
collection里面有什么子类?(list和set是实现了collection接口的.) List: 1.可以允许重复的对象(可重复,有序集合).2.可以插入多个null元素.3.常用的实现类有 ...
- Map集合中value()方法与keySet()、entrySet()区别
http://blog.csdn.net/liu826710/article/details/9001254 在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, ...
- map集合中value()、keySet()、entrySet()区别
在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet():将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键, ...
- Map集合中value()方法与keySet()、entrySet()区别 《转》
在Map集合中 values():方法是获取集合中的所有的值----没有键,没有对应关系, KeySet(): 将Map中所有的键存入到set集合中.因为set具备迭代器.所有可以迭代方式取出所有的键 ...
- Map集合中key不存在时使用toString()方法、valueOf()方法和强制转换((String))之间的区别
1.toString()方法 底层代码 public String toString() { return this; } 其返回值为String类型的字符串本身 Map<String, Obj ...
- 大数据之路week02--day03 Map集合、Collections工具类的用法
1.Map(掌握) (1)将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. (2)Map和Collection的区别? A: Map 存储的是键值对形式的元素,键唯一,值可以 ...
- Map集合笔记
一.Map集合的特点 Map集合是一个双列集合 Map中的元素,key和value的数据类型可以相同,也可以不同. Map中的元素,key是允许重复的,value是可以重复的 Map中的元素,key和 ...
随机推荐
- eslint prettier editrorconfig - 写出干净的前端代码
FConfidence 关注 2018.12.30 02:38* 字数 2912 阅读 195评论 0喜欢 0 VSCode 插件安装 Prettier - Code Formatter ESLint ...
- .NET图平台下的图像处理工具---强大的Emgucv
图像一直与时代相伴,图形化的应用软件也重不可缺.对于MFC.Delphi.Lazarus.Qt大家可能已经耳熟能详.对于很多图像处理的开源库,很多都是用C\C++写的,而.Net下的开源库以前很少了解 ...
- JavaScript逗号操作符
今天在CSDN看到一篇文章http://www.csdn.net/article/2014-01-06/2818025-Useful-JavaScript-Tips-Best-Practices?re ...
- springBoot(4)---热部署,配置文件使用
热部署,配置文件使用 一.热加载 spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Sprin ...
- mysql 开发进阶篇系列 7 锁问题(innodb锁争用情况及锁模式)
1 .获取innodb行锁争用情况 1.1 通过检查innodb_row_lock状态变量来分析系统上的行锁的争夺情况 SHOW STATUS LIKE 'innodb_row_lock%' 通过in ...
- spring-boot-maven-plugin插件的作用
要记住:spring-boot-maven-plugin插件在打Jar包时会引入依赖包 可以打成直接运行的Jar包 maven项目的pom.xml中,添加了org.springframework.bo ...
- Python爬虫、自动化常用库&帮助文档URL
一.Python下载地址 Windows终端Cmder.exe下载--->http://cmder.net/ Python下载(Windows) ---> https://w ...
- 第二次作业:分布式版本控制系统Git的安装与使用
本次作业要求来自:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2103 第一个git仓库地址:https://github.com/ ...
- Android内存优化之磁盘缓存
前言: 在上一篇文章中介绍了内存缓存,内存缓存的优点就是很快,但是它又有缺点: 空间小,内存缓存不可能很大: 内存紧张时可能被清除: 在应用退出时就会消失,做不到离线: 基于以上的缺点有时候又需要另外 ...
- MySQL导入导出实践
最近一次数据迁移,需要将MySQL的数据导出.处理后导入到新表和ES.这里做个简单记录,方便后续查询. 注: 为了写文章方便及隐私安全,实际内容会有所简化.例如表结构简化.数据库连接部分全部用 xxx ...