Map集合相关知识(Java)
2021/8/25 17:07:44
本文主要是介绍Map集合相关知识(Java),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、
1、特点:
(1)用于存储任意键值对;(2)键:无序,无下标,不允许重复;
(3)值:无序,无下标,允许重复。
2、方法:
(1)
package com.qf.chapter_05; import java.util.HashMap; import java.util.Map; import java.util.Map.Entry; import java.util.Set; public class TestMap { public static void main(String[] args) { //1创建集合 Map<String, String> map=new HashMap<>(); //2添加元素 map.put("cn", "china"); map.put("usa", "americn"); map.put("uk", "england"); System.out.println(map.size()); System.out.println(map.toString()); //3删除 //map.remove("usa");//按键删除 //4遍历 //4.1 keySet()所有键 //Set<String> keySet=map.keySet(); for(String key:map.keySet() ) { System.out.println(key+"===="+map.get(key)); } //4.2 entrySet()所有键值对,更高效 //Set<Map.Entry<String, String>> entries=map.entrySet(); for(Map.Entry<String, String> entry:map.entrySet()) { System.out.println(entry.getKey()+"====="+entry.getValue()); } //5 System.out.println(map.containsKey("cn")); System.out.println(map.containsValue("china")); } }
(2)HashMap
运行效率快,线程不安全,允许使用null作为key or value
package com.qf.chapter_05; import java.util.HashMap; import java.util.Map; public class TestHashMap { public static void main(String[] args) { //没有添加元素时,table=null,size=0 HashMap<Student, String> students=new HashMap<>(); // Student s1=new Student("zps",100); Student s2=new Student("ww",200); Student s3=new Student("zll",140); students.put(s1, "jx"); students.put(s2, "hn"); students.put(s3, "hk"); System.out.println(students.size()); System.out.println(students.toString()); // for(Map.Entry<Student, String> entry:students.entrySet()) { System.out.println(entry.getKey()+" "+entry.getValue()); } } }
package com.qf.chapter_05; public class Student { private String name; private int num; public Student() { // TODO 自动生成的构造函数存根 } public Student(String name, int num) { super(); this.name = name; this.num = num; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } @Override public String toString() { return "Student [name=" + name + ", num=" + num + "]"; } }
1、HashMap刚创建时,table=null,为了节省空间,当加入第一个元素时,table=16;
2、
(3)TreeMap
实现了SortedMap接口(是Map的子接口),可以对key自动排序
存储结构为红黑树
其他操作与HashMap一样
二、Collection工具类
reverse | 反转集合中元素顺序 |
binarySearch | 查找元素,要先排序 |
shuffle | 随机重置元素顺序 |
sort | 升序 |
copy | 复制,size要一样 |
toArray(new ) | list转数组 |
Arrays.asList | 数组转集合,集合不能添加和删除 |
这篇关于Map集合相关知识(Java)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-28MQ底层原理资料详解:新手入门教程
- 2024-11-28MQ项目开发资料详解:新手入门教程
- 2024-11-28MQ项目开发资料详解:入门与初级用户指南
- 2024-11-28MQ消息队列资料入门教程
- 2024-11-28MQ消息队列资料:新手入门详解
- 2024-11-28MQ消息中间件资料详解与应用教程
- 2024-11-28MQ消息中间件资料入门教程
- 2024-11-28MQ源码资料详解与入门教程
- 2024-11-28MQ源码资料入门教程
- 2024-11-28RocketMQ底层原理资料详解