首页 > 其他分享 >神中神之【Map】遍历操作

神中神之【Map】遍历操作

时间:2024-02-28 23:37:16浏览次数:21  
标签:Map 遍历 map System println key 神中神

前言
首先插入几个值方便操作
'''
Map<Integer,String> map=new HashMap<>();
map.put(1,"A");
map.put(2,"B");
map.put(3,"C");
// System.out.println(map); ->{1=A, 2=B, 3=C}调用tostring'''
// 想得到具体实参要用以下操作
Key遍历
key遍历顾名思义就是查找map中key的值

ForEach遍历
要知道Map是不继承Collection的,严格意义来说他只是一个映射不能算作一个集合,所以无法用Foreach方法,但是为了方便Map内部的Foreach方法是应用了entrySet的(我们稍后再讲),而entrySet方法返回的是一个Set集合,所以能遍历

总的来说,可以直接使用Foreach方法,但底层不是Map在用,而是Set在用
不多说直接上代码

'''
// 1.(Foreach遍历方法查找key和value)
map.forEach((key,value)-> System.out.println(key));
map.forEach((key,value)-> System.out.println(key+"->"+value));
增强for循环遍历(只读,不能进行remove等操作)
// 1.KeySet遍历(增强for循环遍历)
//
Set set = map.keySet();
for(int key:set){
System.out.println(key);
}//增强for循环迭代
Value遍历
// 2.values
for(String value:map.values()){
System.out.println(value);
}
'''
entrySet遍历 (最常用)
这里map.entrySet()返回的是Set集合,但是集合内部类型是Map.Entry接口的实现方法,对于每一个遍历的对象都是Entry类型的,而该对象有getKey方法和getvalue方法,极大便利了获取 map值操作
'''
for(Map.Entry<Integer,String> entry: map.entrySet()){
System.out.println(entry.getKey()+"->"+entry.getValue());
}//同样只读
迭代 即可查找又可修改(神中神)
Iterator<Map.Entry<Integer, String>> iterator=map.entrySet().iterator();
while (iterator.hasNext()){
Map.Entry<Integer,String> entry=iterator.next();
System.out.println(entry.getKey()+"->"+entry.getValue());
iterator.remove();
}'''

标签:Map,遍历,map,System,println,key,神中神
From: https://www.cnblogs.com/258-333/p/18042328

相关文章

  • JAVA基础:数组遍历
    遍历:一个一个访问 packagecom.itheima.arry;publicclassArryDemo2{publicstaticvoidmain(String[]args){//掌握数组遍历int[]ages=newint[]{12,24,36};//System.out.println(ages[0]);//System.out.println(ages[1]);......
  • 假期vue学习笔记15 求和mapstate_mapgetter
     importVuefrom'vue'importAppfrom'./App.vue'importstorefrom'./store'Vue.config.productionTip=falsenewVue({  el:'#root',  render:h=>h(App),  store,  beforeCreate(){    Vue.......
  • golang中关于map的value类型定义为函数类型时(方法值)的一点点思考
    文章的内容仅仅是自己关于map的value类型定义为函数类型时的一点点思考,如有不对的地方,请不吝赐教。学习过后才知道叫做方法值。1、起因最近在看老项目代码时,看到了一段类似于下面的定义,最开始看到的时候,对于LotMap的用法比较疑惑,为什么mapvalue定义的函数类型是func(r......
  • Openlayer加载mapboxgl矢量图层
    注意Openlayer的版本Openlayer是支持直接加载矢量图层的,如下图层会没有样式渲染<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0&q......
  • STL-unordered_map,unordered_set模拟实现
    unordered_set#pragmaonce#include"28hashtable_container.h"namespacetest{//template<//classKey,//unordered_set::key_type/value_type//classHash=hash<Key>,//unordered_s......
  • STL-RBT_map,set模拟实现
    set#include"26RBT_container.h"namespacetest{//set通过普通迭代器使用const迭代器实现限制key不能被修改template<classK>classset{private:structsetKeyOfT//命名?返回RBT的类型T接收的set的key{constK&......
  • CTFHUB-web-信息泄露-目录遍历
    开启靶场http://challenge-a4aa9ff53d890618.sandbox.ctfhub.com:10800/查看此处源代码,没有发现有用信息点击开始寻找flag挨个点几个目录寻找flag在目录1/2下发现了flag提交一手,直接成功。可以参考此链接(纯小白,无教程思路有限)https://www.cnblogs.com/quail2333/p/12......
  • Qt QVector和vector以及QMap和map的遍历性能对比
    使用Qt中的容器给C++开发带来很大的便利,而且QVector和QMap等容器扩展的一些成员函数也是很方便的。但是Qt的这些容器和STL库的容器比,效率到底怎么样?我就写了几个简单的遍历的例子,测试了QVector、vector等容器的那些方法效率更高。测试环境:系统:windows10编译器:MingGWmingw......
  • Qt QVector、QList、QSet和QMap:性能与用途比较
    Qt提供了多种容器类,用于存储和管理数据。其中,QVector、QList、QSet和QMap是最常用的几种。这些容器类在性能和用途方面存在一些差异,选择合适的容器对于提高应用程序的效率和正确性至关重要。下面我们将从以下几个方面对这四种容器进行比较:1.存储方式QVector:动态数组,元素在......
  • 扩展运算符...+map+filter 在嵌套对象数组中的使用
    参考文档:使用基于嵌套值的数组过滤对象数组:https://segmentfault.com/q/1010000042989861js扩展运算符(...)的用法 :https://www.cnblogs.com/caihongmin/p/16395573.html对象的扩展运算符:https://blog.csdn.net/weixin_42265852/article/details/88739525Vue判断对象中......