Java中Map基本操作

void:clear() 清空集合中所有的对

boolean:containsKey(Object key) 判断是否包含指定的键

boolean:containsValue(Object value) 判断是否包含指定的值

Set>:entrySet() 返回所有Entry的集合, 一个对就是一个Entry

boolean:equals(Object o)

V:get(Object key) 返回键对应的值

boolean:isEmpty() 判断集合是否为空

Set:keySet() 返回键的集合

V:put(K key, V value) 添加对, 如果key键已存在,使用value值替换原来的值

void:putAll(Map m) 把m集合中所有的对添加到当前集合中

V:remove(Object key) 只要key匹配就删除对应的对

default boolean:remove(Object key, Object value) 删除

default V:replace(K key, V value) 使用value值替换key原来的值

int:size() 返回对的数

Collection:values() 返回所有值的集合

package com.wkcto.chapter05.map;

import java.util.HashMap;

import java.util.Map;

/**

* 演示Map的基本操作

* @author 蛙课网

*

*/

public class Test01 {

public static void main(String[] args) {

//1) 创建Map集合, 用来保存

//Map是一个接口,需要赋值实现类对象

Map map = new HashMap<>();

//2) 添加数据

map.put("feifei", 30000);

map.put("bin", 40000);

map.put("zhang", 50000);

map.put("yong", 100000);

//3) 直接打印, 存储顺序与添加顺序可能不一致

System.out.println( map );

//{bin=40000, yong=100000, zhang=50000, feifei=30000}

//4)添加重复的键, 如果键重复,会使用新的value值替换原来的值, Map中的键不能重复的

map.put("bin", 40001);

System.out.println( map );

//5)修改

map.replace("feifei", 30002);

map.replace("yan", 6666);//替换时, 如果键不存在,替换不成功

System.out.println( map );

//6)判断

System.out.println( map.isEmpty() );

System.out.println( map.size());

System.out.println( map.containsKey("feifei"));

System.out.println( map.containsValue(100000));

System.out.println( map.get("yong"));

System.out.println( map.get("cui")); //如果键不存在, 返回null

//7) 删除

map.remove("bin", 40000); //删除对, 要求键与值都匹配才能删除

System.out.println( map ); //{bin=40001, yong=100000, zhang=50000, feifei=30002}

map.remove("yong");//只要键匹配就删除

System.out.println( map );

}

}

package com.wkcto.chapter05.map;

import java.util.Collection;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Map;

import java.util.Map.Entry;

import java.util.Set;

/**

* Map的遍历

* @author 蛙课网

*

*/

public class Test02 {

public static void main(String[] args) {

//1)创建Map集合

Map map = new HashMap<>();

//2) 添加数据

map.put("feifei", 30000);

map.put("bin", 40000);

map.put("zhang", 50000);

map.put("yong", 100000);

//3) 获得所有键的集合,

Set keySet = map.keySet();

System.out.println( keySet );

//4) 所有值的集合

Collection values = map.values();

Iterator iterator = values.iterator();

while (iterator.hasNext()) {

Integer integer = (Integer) iterator.next();

System.out.print( integer + "\t");

}

System.out.println();

//5)所有entry的集合, 一个Entry就是一个对

Set> entrySet = map.entrySet();

for (Entry entry : entrySet) {

System.out.println( entry.getKey() + " : " + entry.getValue());

}

}

}

练习

package com.wkcto.chapter05.map;

import java.util.HashMap;

import java.util.Map;

import java.util.Map.Entry;

import java.util.Set;

/**

* 统计字符串中每个 字符出现的次数

* a : 12

* c : 5

* d : 23

*

* @author 蛙课网

*

*/

public class Test03 {

public static void main(String[] args) {

String text = "afdfasfafasfdaczadsfazcvafdfcvfdfdaadvavdavfdaav zcvafdafadfvczxvzvafdafad";

//1) 定义一个Map保存结果

Map map = new HashMap<>();

//2) 遍历字符串中的每个 字符

for( int i = 0 ; i < text.length(); i++){

char cc = text.charAt(i); //取出对应的字符

//如果字符不是第一次出现, 把原来的次数 加 1

if ( map.containsKey(cc) ) { //Map集合中的键包含cc这个字符

Integer count = map.get(cc); //把cc字符原来的次数取出来

map.replace(cc, count + 1 ); //把cc字符的次数加1, 保存到map中

}else{

//如果是第一次出现, 把 保存到集合中

map.put(cc, 1);

}

}

//3) 打印结果

Set> entrySet = map.entrySet();

for (Entry entry : entrySet) {

System.out.println( entry.getKey() + " : " + entry.getValue());

}

}

}

map操作 java,Java中Map基本操作相关推荐

  1. Java 8 中 Map 骚操作之 merge() 的用法

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | juejin.im/post/5d9b455a ...

  2. java map操作_Java 8 中的 Map 骚操作,学习下!

    怎么用? 简介 使用场景 其他 总结 Java 8最大的特性无异于更多地面向函数,有时约会了等,可以更好地进行函数式编程. 前段时间无意间发现了方法,感觉还是很好用的,此文简单做一些相关介绍.首先我们 ...

  3. java putifabsent_java8中Map的一些骚操作总结

    一 前言 本篇内容是关于 map 新特性的一些方法使用上的介绍,如果有不足之处欢迎补充!! 二 map新特性 关于以下函数式编程的函数的计算知识追寻者都使用 简单字符串代替了,参数无非就是Key,va ...

  4. java map集合使用_JAVA中Map集合的使用举例

    首先创建一个Emp类,再将几个Emp对象添加到Map集合中. Emp的id作为Map的键,并将id为"005"的对象从集合中删除. package com.han; import ...

  5. 1.7 Java 8中Map新增的方法

    Java 8 除了为 Map 增加了 remove(Object key, Object value) 默认方法之外,还增加了如下方法. 名称 说明 Object compute(Object key ...

  6. java map 自动排序_Java中Map的排序

    Map的种类 在Java中,Map的主要作用是存储键值对.由于是根据键得到值,所以不允许键重复.它主要有如下几个类别: HashMap: 最常用的Map,它根据键的HashCode值存储数据,根据键可 ...

  7. java map传入参数_JAVA中map中参数的添加修改

    Map以按键/数值对的形式存储数据,和数组非常相似,在数组中存在的索引,它们本身也是对象. Map的接口 Map---实现Map Map.Entry--Map的内部类,描述Map中的按键/数值对. S ...

  8. 回忆Java基础中Map的遍历方法

    转自http://blog.163.com/fw_long/blog/static/51771186201392982041337/ keySet是键的集合,Set里面的类型即key的类型 entry ...

  9. stream map方法_Java Stream中map和flatMap方法

    最近看到一篇讲stream语法的文章,学习Java中map()和flatMap()方法之间的区别. 虽然看起来这两种方法都做同样的事情,都是做的映射操作,但实际上差之毫厘谬以千里. 通过演示Demo中 ...

  10. python map什么意思_Python中map是什么意思

    点击上面"蓝字"关注我们! 大约需要2分钟 map函数的原型是map(function, iterable, -),它的返回结果是一个列表. 参数function传的是一个函数名, ...

最新文章

  1. 想体验无人商店?去京东他们家直接刷脸!
  2. python中国大学排名爬虫写明详细步骤-Python之爬虫-中国大学排名
  3. [译]2019年修炼前端开发者之路
  4. 浅谈JVM(一) ClassLoader的双亲委派和沙箱机制
  5. DOM节点中属性nodeName、nodeType和nodeValue的区别 Delphi
  6. (原创) 对饱和状态NPN晶体管内部机制的理解分析
  7. C++11中thread库join和detach的区别
  8. POJ 3020 Antenna Placement(无向二分图的最小路径覆盖)
  9. 记一次星环大数据tdh集群中因某节点systemd服务进程bug而引起大数据集群异常问题的排查与修复...
  10. 6.9 齐次线性方程组
  11. html导航栏点击显示该栏内容,点击导航栏,实现下方内容改变
  12. 补盲激光雷达大爆发,各路产品谁领风骚?
  13. ubuntu18设置屏幕旋转_[Android6.0][MTK6737] 设置屏幕旋转 270 度
  14. [Unity][C#]Regex正则表达式判断字符串
  15. 最简单优雅修改jupyter自带主题字体大小颜色(不需要插件不需要第三方theme)
  16. JAVA编写 飞翔的小鸟
  17. TCP/IP协议栈Lwip的设计与实现:之一
  18. 大学排行榜 : qs全球中国区仅大陆大学排行榜
  19. Android实战技巧之四十七:不用预览拍照与图片缩放剪裁
  20. ISE综合工具XST综合约束相关

热门文章

  1. 维度、度量、指标概念
  2. 书架bookshelf
  3. “一杯严选”的2019猪年新春贺岁 “福鼎一杯”生态@复联复兴者联盟
  4. 动态cg怎么提取_galgame怎么提取动态cg(千彰cg怎么拿)
  5. Exercise11-Matplotlib
  6. 推荐系统与深度学习(二)——FFM模型原理​
  7. background-attachment: fixed 在iphone设备失效
  8. win7无法通过网页登录ftp服务器,win7不能登录ftp服务器配置
  9. 【史纲】绪论、第一章、第二章部分 (戊戊维新之前)
  10. tezos智能合约的合约间互相call