找南昌兼职做网站的常德生活网
找南昌兼职做网站的,常德生活网,杭州百度公司在哪里,网站空间已到期 请尽快续费开通1、HashMap#xff1a;
1#xff09;、 引入
如果业务需要我们去用姓名的拼音手写字母匹配完整姓名#xff0c;那么如果用单列数据#xff0c;我们可能需要两个集合才能存储#xff0c;而且两个集合之间没有关联不好操作#xff0c;这种时候双列数据就会起很大作用
2
1、 引入
如果业务需要我们去用姓名的拼音手写字母匹配完整姓名那么如果用单列数据我们可能需要两个集合才能存储而且两个集合之间没有关联不好操作这种时候双列数据就会起很大作用
2、 单列数据与双列数据 3、map概述
Map 映射。跟 Collections 体系的集合是不一样的。是以key-value的形式保存数据的常常称之为键值对。
4、 HashMap概念及特点
概述HashMap实现了Map接口是Map子类中使用最最最多的。
数据结构key部分使用的数据结构为数组双向链表红黑树 。HashSet使用的就是key部分进行存储的。
存储数据特点 键值对映射关系 一个键对应一个值 键不能重复值可以重复 键允许为空值 元素存取无序
5、 方法的使用
方法名说明V put(K key,V value)添加元素V remove(Object key)根据键删除键值对元素void clear()移除所有的键值对元素boolean containsKey(Object key)判断集合是否包含指定的键boolean containsValue(Object value)判断集合是否包含指定的值boolean isEmpty()判断集合是否为空int size()集合的长度也就是集合中键值对的个数V get(Object key)根据键获取值SetK keySet()获取所有键的集合CollectionV values()获取所有值的集合SetMap.EntryK,V entrySet()获取所有键值对对象的集合 6、增加
import java.util.HashMap;
import java.util.Map;public class AddDemo {public static void main(String[] args) {// 定义一个map对象key存放字符串类型value存放Integer类型MapString, Integer map new HashMap();map.put(a, 5);map.put(c, 2);map.put(e, 6);map.put(null, 0);map.put(null, 2);System.out.println(map);// 定义一个mapkey存放字符串类型value存放字符串类型MapString, String map1 new HashMap();map1.put(java, 企业级系统开发);map1.put(Python, 人工智能);map1.put(go, 字节跳动);map1.put(null, null);// key不存在就添加key存在如果value值为null也会添加map1.putIfAbsent(null, 哈哈);System.out.println(map1);}
}
7、删除
import java.util.HashMap;
import java.util.Map;public class RemoveDemo {public static void main(String[] args) {// 定义一个mapkey存放字符串类型value存放字符串类型MapString, String map new HashMap();map.put(001, 唐海峰);map.put(002, 张三丰);map.put(003, 张无忌);map.put(004, 东方不败);// 根据键值删除返回被删除的元素String content map.remove(001);System.out.println(content);System.out.println(map);// 根据键值对删除返回一个Boolean类型的结果boolean flag map.remove(004, 东方不败);System.out.println(flag);System.out.println(map);// 清空集合map.clear();System.out.println(map);}
}
8、修改
import java.util.HashMap;
import java.util.Map;public class UpdateDemo {public static void main(String[] args) {// 定义一个mapkey存放字符串类型value存放字符串类型MapString, String map new HashMap();map.put(001, 唐海峰);map.put(002, 张三丰);map.put(003, 张无忌);map.put(004, 东方不败);System.out.println(map);// 修改(存在就修改不存在就添加)String content map.put(001, 唐延);System.out.println(content);System.out.println(map);// 根据key查找替换指定key值的内容String con map.replace(006, 唐海峰);System.out.println(con);System.out.println(map);// 根据key,value查找替换指定的值map.replace(001, 唐延, tarnett);System.out.println(map);}
}
9、查询
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;public class SelectDemo {public static void main(String[] args) {// 定义一个mapkey存放字符串类型value存放字符串类型MapString, String map new HashMap();map.put(001, 唐海峰);map.put(002, 张三丰);map.put(003, 张无忌);map.put(004, 东方不败);System.out.println(map);// 获取指定key对应的值String content map.get(001);System.out.println(content);// 获取集合的长度获取key的长度System.out.println(map.size());// 查询是否包含指定的keySystem.out.println(map.containsKey(006));// 判断是否为空System.out.println(map.isEmpty());// 获取所有的keySetString keySet map.keySet();System.out.println(keySet);// 获取所有的值CollectionString values map.values();System.out.println(values);}
} 2、两种遍历
1、通过key获取值
import java.util.HashMap;
import java.util.Map;
import java.util.Set;public class KetSetDemo {public static void main(String[] args) {MapString, String map new HashMap();map.put(001, 唐海峰);map.put(002, 张三丰);map.put(003, 张无忌);map.put(004, 东方不败);// 获取所有的keySetString keySet map.keySet();// 遍历keySet通过key获取valuefor(String key : keySet){String value map.get(key);System.out.println(value);}}
}
2、获取所有的键值对
import java.util.HashMap;
import java.util.Map;
import java.util.Set;public class EntryDemo {public static void main(String[] args) {MapString, String map new HashMap();map.put(001, 唐海峰);map.put(002, 张三丰);map.put(003, 张无忌);map.put(004, 东方不败);// 获取所有的键值对SetMap.EntryString, String entrySet map.entrySet();// 遍历键值对for(Map.EntryString, String entry : entrySet){// 通过键值对对象获取key和valueSystem.out.println(key entry.getKey() : entry.getValue());}}
}
3、HashMap保存各种数据类型
1、键是String值为自定义类型
import java.util.HashMap;
import java.util.Set;/*** 键是String值为自定义类型*/
public class Test01 {public static void main(String[] args) {HashMapString, Student map new HashMap();map.put(001, new Student(zhangsan, 21));map.put(002, new Student(lisi, 22));map.put(003, new Student(wangwu, 23));System.out.println(map);// 遍历SetString keySet map.keySet();for(String key : keySet) {System.out.println(map.get(key));}}
}
2、键是String值为ArrayList
import java.util.*;/*** 键是String值为ArrayList*/
public class Test02 {public static void main(String[] args) {MapString, ListString map new HashMap();List list1 new ArrayList();list1.add(孙悟空);list1.add(猪八戒);map.put(西游记, list1);List list2 new ArrayList();list2.add(赵云);list2.add(马超);map.put(三国演义, list2);// 遍历SetString keySet map.keySet();for(String key : keySet) {ListString list map.get(key);for (String value : list) {System.out.println(value);}}}
}
3、ArrayList嵌套HashMap
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class Test03 {public static void main(String[] args) {ListHashMapString, String list new ArrayList();HashMapString, String map1 new HashMap();map1.put(杨过, 小龙女);map1.put(郭靖, 黄蓉);list.add(map1);HashMapString, String map2 new HashMap();map2.put(java, 系统开发);map2.put(go, 字节跳动);list.add(map2);System.out.println(list);}
}
本电子书目录《Java基础的重点知识点全集》
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/86984.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!