Map 集合
《零基础学Java 》
Map 集合
在程序中需要存储具有映射关系就需要使用Map集合了。
Map集合由Map接口、Map接口的实现类组成。
Map 接口
Map接口没有Collection接口。
Map接口**提供了 **Key 到 Value 的映射关系。
Map接口中不能包含相同的 key ,并且每个 Key 只能映射一个 Value。
Map接口常用的方法

(PS:该图片为 明日科技 出版的《零基础学JAVA》中的)
Map接口的实现类
Map接口常用的两种方法
- HashMap类:HashMap类是Map接口的实现类。HashMap类能够快速通过哈希表快速查找内部的映射关系,但是不能保证映射的顺序。在 Key(键) - Value(值) 中,Key 不能重复,所以只能有一个 Key 为null,但是可以有多个 Value 为null。
- TreeMap类:TreeMap类是Map接口的实现类,还实现了 java.util.SortedMap 接口。使用TreeMap类实现的Map集合存储 Key(键) - Value(值) 时,需要对 Key 进行排序,所以Value不能为null。
(PS:我们通常使用 HashMap类 去实现Map集合。)
实例演示
import sun.reflect.generics.tree.Tree;
import java.util.*;
public class Demo5 {
public static void main(String[] args) {
// Map map = new HashMap();
Map map = new TreeMap();
//K(键),v(velue)
/**
* HashMap可以放入任何值
* TreeMap不能保存null值,保存值要是对象
*/
map.put("String","这是字符串");
map.put("Object",new Object());
map.put("int",12345);//不同的键可以保存相同的值
map.put("数字",12345);
map.put(1,"1");//TreeMap方法的键值,要是个对象
map.put(new Object(),new Object());
map.put(null,null);//HashMap也可以保存null
System.out.println("map中元素个数:"+map.size());
Set set = map.keySet();//把所以的K(键)输出
Iterator iterator = set.iterator();//创建迭代器
// while (iterator.hasNext()){
//// System.out.println(iterator.next());//输出所有的K(键)
//
// Object obj = iterator.next();//通过Object对象获取值
// System.out.println("Key="+obj+"\t\t\tvalue="+map.get(obj));//输出所有的值
// }
System.out.println(map.get("String"));//通过键,获取velue值
}
}
Map 集合的更多相关文章
- Java版本:识别Json字符串并分隔成Map集合
前言: 最近又看了点Java的知识,于是想着把CYQ.Data V5迁移到Java版本. 过程发现坑很多,理论上看大部分很相似,实践上代码写起来发现大部分都要重新思考方案. 遇到的C#转Java的一些 ...
- Java常用的几种集合, Map集合,Set集合,List集合
Java中 Object是所有类的根 Java集合常用的集合List集合.Set集合.Map集合 Map接口常用的一些方法 size() 获取集合中名值对的数量 put(key k, value v ...
- Map集合
1:Map (1)将键映射到值的对象. 一个映射不能包含重复的键:每个键最多只能映射到一个值. 键值对的方式存在 (2)Map和Collection的区别? A:Map 存储的是键值对形式的元素,键唯 ...
- MyBatis的一系列问题的处理(遍历Map集合和智能标签和属性和字段不一样的解决办法 和sql片段)(三)
一.字段名与属性名(数据库的名字)不一样怎么办? 方案一:在小配置中配置一个resultMapper <!--方案一:resultMapper 字段名与属性名不一致 --> <res ...
- Map集合及与Collection的区别、HashMap和HashTable的区别、Collections、
特点:将键映射到值的对象,一个映射不能包含重复的键,每个键最多只能映射到一个值. Map集合和Collection集合的区别 Map集合:成对出现 (情侣) ...
- java://Comparator、Comparable的用法(按照要求将map集合的键值对进行顺序输出)
import java.util.*; public class Person implements Comparable<Person>//使Person的属性具有比较性 { priva ...
- Java集合类学习笔记(Map集合)
Map用于保存具有映射关系的数据,因此Map集合里保存着两组数据,一组用于保存Map的key,一组用于保存key所对应的value. Map的key不允许重复. HashMap和Hashtable都是 ...
- java学习第18天(map集合)
Map集合是将键映射到值的对象.一个映射不能包含重复的键:每个键最多只能映射到一个值. 存储的是键值对形式的元素,键唯一,值可以重复,有点类似于数据库中的主键加数据.主要功能有: A:添加功能 put ...
- Map集合 总结
(本人第一次写博客,部分内容有参照李刚老师的疯狂java系列图书,如有遗漏错误,请多指教,谢谢.) Java的集合类可分为Set.List.Map.Queue,其中Set.List.Queue都有共同 ...
- Map集合的应用及其遍历方式
---> HashMap :底层基于哈希表 存储原理也使用哈希表来存放的: 往HashMap添加了元素 ,首先会调用键的hashCode方法 获得一个哈希值,然后 ...
随机推荐
- Func<>用法
Func是一个委托,委托里面可以存方法,Func<string,string>或Func<string,string,int,string>等 前几个是输入参数,最后一个是返回 ...
- Maven系列--"maven-compiler-plugin"的使用
万分感谢大佬:Poorzerg 原文链接:https://my.oschina.net/poorzerg/blog/206856 maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的j ...
- PHP 取整
转载请注明来源:https://www.cnblogs.com/hookjc/ 对于功能强大的PHP语言来说,能掌握到它的函数用法,一般都能灵活的编写各种需求的PHP程序.我们经常用到的PHP取整函数 ...
- Posix 信号
转载请注明来源:https://www.cnblogs.com/hookjc/ 函数sem_open创建一个新的有名信号灯或打开一个已存在的有名信号灯.有名信号灯总是既可用于线程间的同步,又可以用于进 ...
- @play.data.binding.NoBinding
新的@play.data.binding.NoBinding注解允许我们定义一些"不应该被绑定"的字段,以防出现安全问题.例如: public class User extends ...
- JavaGuide--Java篇
本文避免重复造轮子,也是从JavaGuider中提取出来方便日后查阅的手册 参考链接: JavaGuider:https://javaguide.cn/java/basis/java-basic-qu ...
- maven下使用jstl标签(1.2)版本
使用的是1.2版本的,只需要一个jstl-1.2.jar jsp中头部加入<%@ taglib prefix="c" uri="http://java.sun ...
- pycharm工具使用
转自: https://blog.csdn.net/u014044812/article/details/78727496 因公司的需求,需要做一个爬取最近上映的电影.列车号.航班号.机场.车站等 ...
- 6、Linux基础--文件类型、属性信息、创建用户与用户组
笔记 1.晨考 1.解析映射文件 /etc/hosts 2.磁盘挂载文件 /etc/fstab 3.设置开机自启动脚本的步骤 1.修改/etc/rc.local 2.设置可执行权限 chmod +x ...
- Solution -「国家集训队」「洛谷 P4451」整数的 lqp 拆分
\(\mathcal{Description}\) Link. 求 \[\sum_{m>0\\a_{1..m}>0\\a_1+\cdots+a_m=n}\prod_{i=1}^mf ...