019.2 map集合类
Map<k,v>
Map:双列集合,一次存一对,键值对,类似于python的字典。
共性功能:
1、添加
v put(key,value) //返回key的旧值
putAll(Map<k,v> map);
2、删除
void clear();
v remove(key); //删除该键并返回值
3、判断
boolean containsKey(object)
boolean containsValue(object);
boolean isEmpty();
4、获取
v get(key); //获取该键的值,不删除
int size();
例子:
public static void main(String[] args)
{
Map<Integer,String> map = new HashMap<Integer, String>();
methodDemo(map);
}
public static void methodDemo(Map<Integer,String> map){
System.out.println(map.put(, "xx"));
System.out.println(map.put(, "xxx"));
map.put(, "iii");
System.out.println(map);
}
运行结果:
null
xx
{3=xxx, 7=iii}
keySet()方法
没有迭代器,所以用Set keySet()方法,方法会取出所有的键到Set集合里面
Set<Integer> keySet = map.keySet();
for (Iterator iterator = keySet.iterator(); iterator.hasNext();) {
System.out.println(map.get(iterator.next())); }
entrySet()方法
Set<Map.Entry<Integer, String>> mapEntry = map.entrySet();
for (Iterator<Map.Entry<Integer, String>> it = mapEntry.iterator(); it.hasNext();) {
Map.Entry<Integer, String> m = it.next();
Integer key = m.getKey();
String value = m.getValue();
System.out.println(key+"->"+value); }
values()方法
同步是指只允许单一线程访问该对象
Map子类对象
Hashtable:哈希表,是同步的,不允许null键、null值
HashMap:哈希表,不同步,允许null键,null值
TreeMap:二叉树,不同步,可以对map集合中的键进行排序
练习——Map存取取出自定义类型
对象要复写hashCode()方法,保障键的唯一性
Map<Employee, String> map = new HashMap<Employee, String>();
map.put(new Employee(), "广东");
for(Employee em: map.keySet()){
System.out.println(map.get(em)); }
treeMap要实现comparable接口或者用comparator对象
hashMap要复写hashCode()方法
改成linkhashMap可以实现有序
什么时候使用map集合?
存在映射关系的。
019.2 map集合类的更多相关文章
- Java Map 集合类简介
作者:Jack Shirazi 了解最常用的集合类型之一 Map 的基础知识以及如何针对您应用程序特有的数据优化 Map. 本文相关下载: · Jack 的 HashMap 测试 · Oracle ...
- JAVA Map集合类简介
了解最常用的集合类型之一 Map 的基础知识以及如何针对您应用程序特有的数据优化 Map. 本文相关下载: · Jack 的 HashMap 测试· Oracle JDeveloper 10g jav ...
- collection和map集合类知识点总结
collection和map集合类知识点总结 最近在准备java基础知识的总结,发现对于集合类的知识点很多很杂,借鉴网上的帖子,整理如下. 一.定义 集合框架是为表示和操作集合而规定的一种统一的标准的 ...
- Java Map 集合类在selenium自动化测试设计中的应用
我们在设计自动化测试用例的时候,往往很多工作是在处理测试的数据. 测试数据无论用Excel 文件, XML文件或者任何一种形式测存储方式,都会设计到参数化以及我们对数据的操作. 这个时候,我们会用到以 ...
- java Map集合类
---恢复内容开始--- Map提供了一个更通用的元素存储方法,Map集合类用于存储元素对(称作"键"和"值"),其中每个键映射到一个值. 了解Map接口和方法 ...
- Map集合类
1.1 Map.clear方法——从Map集合中移除所有映射关系 public static void main(String[] args) { Map map=new HashMap(); ...
- Map集合类(一.hashMap源码解析jdk1.8)
java集合笔记一 java集合笔记二 java集合笔记三 jdk 8 之前,其内部是由数组+链表来实现的,而 jdk 8 对于链表长度超过 8 的链表将转储为红黑树 1.属性 //节点数组,第一次使 ...
- Map集合类(二.其他map集合jdk1.8)
java集合笔记一 java集合笔记二 java集合笔记三 1.hashtable(线程安全) 1.存储数据为数组+链表2.存储键值对或获取时通过hash值取模数组长度确定节点在数组中的下标位置 in ...
- Java集合类: Set、List、Map、Queue使用场景梳理
本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E ...
随机推荐
- 我和ARM的那些事儿3 beep之旅,最详细的ARM裸机工程设置
前言 在博客园里面我搜索了老半天,找相应的mini2440的裸机开发的程序,让我挺失望的就是居然没有人对做arm这块做详细的解答,到底如何去做,到底如何去配置,都不清楚,让我很纠结,那么我花了近一星期 ...
- 周记6——css实现类似朋友圈九宫格缩略图完美展示
公司有在做一个类似qq空间的开发,发表说说避免不了的要有图片展示. 产品提出的空间缩略图的展示类似*信朋友圈那种效果--图片不变形.能看到中间部分. 这里给出3种解决方案(jsbin地址失效时可复制代 ...
- IOS打开pdf文件
下了一个打开pdf的第三方,就是打开之后不能缩放.今天上午修改了下试着可以让它能够缩放,在网上查了下,要实现代理方法,写了下,可调试的时候用两个手指不起作用,以为是写的有问题,最后问了下小伙伴.我也在 ...
- DateGridView 分页显示
l 思路:将数据表整体填充至一个Dataset中,探后部分显示(DataaAdapter Fill重载) l DataGridView 控件 l BindingNavigator 控件 l B ...
- redis中的发布订阅(Pub/Sub)
这里使用nodejs的redis模块说明,具体可见https://www.npmjs.com/package/redis,先来通过一个简单的例子了解下redis中的Pub/Sub具体怎么实现吧.. v ...
- 单源最短路(Dijkstra算法)
#返回上一级 @Author: 张海拔 @Update: 2015-03-11 @Link: http://www.cnblogs.com/zhanghaiba/p/3514570.html Dijk ...
- 167 -两个Sum II - 输入数组已排序
给定已按升序排序的整数数组,找到两个数字,使它们相加到特定的目标数. 函数twoSum应返回两个数字的索引,以便它们加起来到目标,其中index1必须小于index2. 注意: 您返回的答案(inde ...
- 撩课-Java每天5道面试题第16天
111.什么是乐观锁(Optimistic Locking)? 悲观锁,正如其名, 它指的是对数据被外界 包括本系统当前的其他事务, 以及来自外部系统的事务处理 修改持保守态度, 因此,在整个数据处理 ...
- Q:接口与抽象类
博文回答一下两个问题: 接口和抽象类的区别 选用接口和抽象类的依据 对于问题1: 从java语法的角度上来说,接口的所有成员和方法都是public的,且其方法均为abstract的.直到jdk1.8之 ...
- css实现修改默认滚动条样式
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head&g ...