Map集合简介
2019-05-22 20:21
85 查看
Map集合
map集合中存放的都是一组组映射关系 key=value
初识map
和set集合方法使用都差不多 但map可以在集合中允许嵌套
常见方法 1、增加 put(K key, V value) putAll(Map<? extends K,? extends V> m) 2、删除 clear() remove(Object key) 3、判断 containsKey(Object key) containsValue(Object value) isEmpty() 4、获取 get(Object key) size() values() entrySet() keySet()
put
- 添加集合元素的同时,它可以编辑原有的元素
如果说集合中没有key对应的value,那么久住集合中添加元素
如果说集合中对应的key有value值,则代表替换原有的值- 返回替换前key对应的value值
entrySet ,keySet 是map特有的遍历的方法
但他们的区别就是 entrySet打印取值 (entry 是一个类) 要把键值一对对都找到能打印出来
而keySet可以根据键一一找到值打印输出
在后面之所以乘上数字,是防止键值相加起来和别的键值相加起来是一样的,而被去重复
public int hashCode() { return this.getName().hashCode()+this.getAge()*12; }
TreeMap
它的使用方法和我的上一篇set篇里的TreeSet一样,详情请看我的上一篇
HashMap
map集合中的泛型要使用包装类,或者是引用数据类型
- 统计字符串中字符出现次数
- @author Administrator
- 思考:
- 1.统计出现次数 2.在根据字母排序
- 统计功能
- 1’将字符串转为字符数组,将这个字符串中的字符当做map集合中的key,将出现的次数最为value值
- 2’将字符第一次出现的时候,那么用在它的集合中进行寻找,返回值必然为null,之后将字符对应的值改为1
- 3’如果说该字符不是第一次出现,该字符对应的值不为null并且 +1
先自定义一个count方法,再重写
代码如下
private static String count(String str) { char[] charArray = str.toCharArray(); Map<Character, Integer> map = new TreeMap<>(); for (char c : charArray) { Integer value = map.get(c); if (value == null) { map.put(c, 1); }else { map.put(c, ++value); } } StringBuffer sb = new StringBuffer(); for (Map.Entry<Character, Integer> entry : map.entrySet()) { sb.append(entry.getKey()+"("+entry.getValue()+")"); } return sb.toString(); }
小结: Map Hashtable:底层是哈希表数据结构,不可以存入null键null值,该集合石线程同步的,jdk1.0,效率低 HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的。将Hashtable替代;jdk1.2,效率高 TreeMap:底层是二叉树数据结构,线程不同步,可以用于给Map集合中的键进行排序 注意: 添加元素时,如果键已经在集合中存在,那么后添加的值会覆盖原来的值,并且put方法会将原有的值返回
相关文章推荐
- Map集合简介
- 【 Java Map】 集合类简介
- 双列集合Map简介
- 五种Map集合简介
- Map(接口简介、HashMap集合、TreeMap集合、Properties、泛型、Collections工具类、Arrays工具类)
- 集合(一):Map,HashMap,Hashtable简介
- 关于List、Set、Map集合的简介(二)
- 【慕课笔记】第五章 JAVA中的集合框架(中) 第1节 Map&HashMap简介
- JAVA集合框架中的常用集合及其特点、适用场景、实现原理简介
- List _ Set _Map_集合使用lambda遍历
- 关于Map集合的遍历总结
- XML和Map集合之间的相互转换
- 关于Map集合的遍历总结
- (37)Java学习笔记——集合框架 / Map集合
- 集合框架Map之entrySet方法的使用
- Scala的集合类中的map方法和count 方法
- 随机获取一个集合(List, Set)中的元素,随机获取一个Map中的key或value
- 集合--Map
- java中把对象、对象bean、list集合、对象数组、Map和Set以及字符串转换成Json
- python:内建函数、range()、map()、filter()、reduce()、sorted()、集合的使用、functools中的函数使用、MD5加密