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集合类的更多相关文章

  1. Java Map 集合类简介

      作者:Jack Shirazi 了解最常用的集合类型之一 Map 的基础知识以及如何针对您应用程序特有的数据优化 Map. 本文相关下载: · Jack 的 HashMap 测试 · Oracle ...

  2. JAVA Map集合类简介

    了解最常用的集合类型之一 Map 的基础知识以及如何针对您应用程序特有的数据优化 Map. 本文相关下载: · Jack 的 HashMap 测试· Oracle JDeveloper 10g jav ...

  3. collection和map集合类知识点总结

    collection和map集合类知识点总结 最近在准备java基础知识的总结,发现对于集合类的知识点很多很杂,借鉴网上的帖子,整理如下. 一.定义 集合框架是为表示和操作集合而规定的一种统一的标准的 ...

  4. Java Map 集合类在selenium自动化测试设计中的应用

    我们在设计自动化测试用例的时候,往往很多工作是在处理测试的数据. 测试数据无论用Excel 文件, XML文件或者任何一种形式测存储方式,都会设计到参数化以及我们对数据的操作. 这个时候,我们会用到以 ...

  5. java Map集合类

    ---恢复内容开始--- Map提供了一个更通用的元素存储方法,Map集合类用于存储元素对(称作"键"和"值"),其中每个键映射到一个值. 了解Map接口和方法 ...

  6. Map集合类

    1.1 Map.clear方法——从Map集合中移除所有映射关系 public static void main(String[] args) {    Map map=new HashMap();  ...

  7. Map集合类(一.hashMap源码解析jdk1.8)

    java集合笔记一 java集合笔记二 java集合笔记三 jdk 8 之前,其内部是由数组+链表来实现的,而 jdk 8 对于链表长度超过 8 的链表将转储为红黑树 1.属性 //节点数组,第一次使 ...

  8. Map集合类(二.其他map集合jdk1.8)

    java集合笔记一 java集合笔记二 java集合笔记三 1.hashtable(线程安全) 1.存储数据为数组+链表2.存储键值对或获取时通过hash值取模数组长度确定节点在数组中的下标位置 in ...

  9. Java集合类: Set、List、Map、Queue使用场景梳理

    本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E ...

随机推荐

  1. 使用Jprofiler+jmeter进行JVM性能调优

    一.JProfiler简介 JProfiler 是一个商业授权的Java剖析工具,由EJ技术有限公司,针对的Java EE和Java SE应用程序开发的.它把CPU.执行绪和内存的剖析组合在一个强大的 ...

  2. spring cloud连载第一篇之bootstrap context

    1. Spring Cloud Context: Application Context Services(应用上下文服务) 1.1 The Bootstrap Application Context ...

  3. 原生JS实现旋转轮播图+文字内容切换

    废话不多说,直接上图看效果: 需求:点击左右按钮实现切换用户图片与信息: 原理:点击右侧左侧按钮,把3号的样式给2号,2号的给1号,1号的给5号,5号的给4号,4号的样式给3号,然后根据现在是第几张图 ...

  4. 关于安装多个版本jdk之后java -version不正确的问题

    问题描述: 今天突然想写一个socket通信的小应用,分别采用BIO.NIO.AIO的方式来实现,来复习前面看的关于TCP/UDP通信的知识.于是乎在原来安装了jdk1.6的机子上重新安装了jdk1. ...

  5. JAVA泛型——逆变

    在上篇<JAVA泛型——协变>这篇文章中遗留以下问题——协变不能解决将子类型添加到父类型的泛型列表中.本篇将用逆变来解决这个问题. 实验准备 我们首先增加以下方法,见代码清单1所示. 代码 ...

  6. 手把手教你使用 VuePress 搭建个人博客

    手把手教你使用 VuePress 搭建个人博客 有阅读障碍的同学,可以跳过第一至四节,下载我写好的工具包: git clone https://github.com/zhangyunchencc/vu ...

  7. [SQL Server] 无法连接到本地数据库

    打开SQL Server配置管理器 启用下图两个协议 打开SQL Server服务 这一步可能出现这种情况: 故障原因是,安装Visual Studio 2012的时候,自动安装“Microsoft ...

  8. sql server数据库导出表里所有数据

    主要步骤: 连接数据库>选择需要导出数据的数据库>任务>生成脚本 点击下一步,选择特定数据库对象>选择需要导出的数据表,下一步 选择高级>要编写脚本的数据的类型:仅限数据 ...

  9. 使用AngularJS 添加行修改、删除表格数据

    https://blog.csdn.net/xin_x1n/article/details/53070144 <html xmlns="http://www.w3.org/1999/x ...

  10. JS实现二叉树的创建和遍历

    1.先说二叉树的遍历,遍历方式: 前序遍历:先遍历根结点,然后左子树,再右子树 中序遍历:先遍历左子树,然后根结点,再右子树 后续遍历:先遍历左子树,然后右子树,再根结点   上代码:主要还是利用递归 ...