博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java集合框架之Map
阅读量:6602 次
发布时间:2019-06-24

本文共 2094 字,大约阅读时间需要 6 分钟。

Map:

一次添加一对元素(key->value)

双列集合,键值对

常用方法:

1、  添加

V put(K key , V value)会更新key对应的value,并返回被替换的value

 

2、  删除

clear():清空集合

V remove(K key) :根据指定的key删除这个键值对

 

3、  判断:

Boolean containsKey(key)

Boolean containsValue(value);

Boolean isEmpty();

4、  获取

Value get(key):通过键获取值,如果没有该键返回null。

Int size():获取键值对个数

 

Map常用子类:

Hashtable(1.0就有):内部结构是哈希表,是同步的,不允许null作为键或者是值

           Hashtable子类:Properties用于存储键值对型的配置信息,配合IO

HashMap:内部是哈希表,不同步,允许null作为键或者值

TreeMap:内部是二叉树,不同步,可以对集合中的键排序

demo:

import java.util.Collection;import java.util.HashMap;import java.util.Iterator;import java.util.Map;import java.util.Set;public class App {    public static void main(String[] args) {                Map
map = new HashMap
(); valuesTest(map); } /** * keySet方法返回map的键Set集合 * @param map */ public static void keySetTest(Map
map){ map.put(1, "arg1"); map.put(3, "arg3"); map.put(2, "arg2"); Set
keySet = map.keySet(); Iterator
it = keySet.iterator(); while(it.hasNext()){ Integer key = it.next(); System.out.println(map.get(key)); } } /** * entrySet * 通过将map转给set实现 * 该方法将key=>value映射关系作为对象存储到set集合中 */ public static void entrySetTest(Map
map){ map.put(1, "arg1"); map.put(3, "arg3"); map.put(2, "arg2"); /** * Map.Entry是个静态内部接口 * * interface Map{ * public static Entry{ * * } * } */ Set
> entrySet = map.entrySet(); Iterator
> it = entrySet.iterator(); while(it.hasNext()){ Map.Entry
temp = it.next(); int key = temp.getKey(); String value = temp.getValue(); System.out.println(key + ":" + value); } } /** * values()返回map集合的值collection * @param map */ public static void valuesTest(Map
map){ map.put(1, "arg1"); map.put(3, "arg3"); map.put(2, "arg2"); // 这里是Collection Collection
co = map.values(); Iterator
it = co.iterator(); while(it.hasNext()){ System.out.println(it.next()); } }}

 

转载于:https://www.cnblogs.com/orlion/p/4822483.html

你可能感兴趣的文章
ASP.NET MVC5+EF6+EasyUI 后台管理系统(7)-MVC与EasyUI DataGrid
查看>>
swift3.0:sqlite3的使用
查看>>
【web JSP basePath】basePath的含义
查看>>
dos命令批处理发送文字到剪贴板
查看>>
Elasticsearch增删改查 之 —— Delete删除
查看>>
OK335xS 256M 512M nand flash make ubifs hacking
查看>>
Point Grey articles link
查看>>
三步走——带你打造一份完美的数据科学家简历
查看>>
shell的历史
查看>>
5.12. zip
查看>>
6.6. Ceph
查看>>
表单元素——checkbox样式美化
查看>>
理解矩阵乘法
查看>>
centos 5.4 上安装 Oracle11g R2 RAC (ASM)
查看>>
【原创】如何查看某进程下运行的线程
查看>>
HTML代码简写法:Emmet和Haml
查看>>
[数据库] Navicat for Oracle基本用法图文介绍
查看>>
算法系列15天速成——第一天 七大经典排序【上】
查看>>
Xcode调试LLDB
查看>>
泛函编程(24)-泛函数据类型-Monad, monadic programming
查看>>