List、Map、Set打印

List

List:和数组类似,List可以动态增长,查找元素效率高,插入删除元素效率低,因为会引起其他元素位置改变。

普通['1','2']

1.循环

2.System.out.println(list);

int数组['1,2,3','4,5,6','1,2,3']

1.for (int[] array : list) { System.out.println(Arrays.toString(array)); }

  1. System.out.println(Arrays.deepToString(list.toArray()));

Set

set无序,下标取得是乱的,不能用i。Set:检索元素效率低下,删除和插入效率高,插入和删除不会引起元素位置改变。

for (Object object : set) {

System.out.println(object);

}

迭代器

Iterator<Object> it = set.iterator();

while(it.hasNext()) {

System.out.println(it.next());

}

Map

存储的是键值对,键不能重复,值可以重复。对 map 集合遍历时先得到键的 set 集合,对 set 集合进行遍历,得到相应的值

方法一

1 使用Map集合中的方法KeySet(),把Map集合所有的Key 取出来 ,存储到一个Set集合中

2 遍历Set集合,获取Map集合中的每一个Key值

3 通过Map集合的get(Key),通过Key找到value

复制代码
public  static  void fun1(HashMap<Integer,String> map){
        //keySet()   返回此映射中所包含的键的 Set 视图。 获取key的set集合
        Set<Integer> set= map.keySet();
        Iterator iterator=set.iterator();
        while (iterator.hasNext()){
            Object key=iterator.next();
            System.out.print(key);
            System.out.print(map.get(key));
        }
    }

方法二:

entrySet() 返回此映射所包含的映射关系的 Set 视图。

1 使用Map集合中的方法entrySet(),把Map集合多个Entry对象取出来,,存储到一个Set集合中

2 遍历Set集合,获取每个Entry对象

3 使用Entry对象的中的方法getKey()和getValue() 获取键键与值

复制代码
public  static  void fun2(HashMap<Integer,String> map){

      Set<Map.Entry<Integer,String>> set=map.entrySet();
      Iterator<Map.Entry<Integer,String>> it=set.iterator();

        while (it.hasNext()){
            Map.Entry<Integer,String> entry=it.next();
            Integer key=entry.getKey();
            String value=entry.getValue();
            System.out.println("Key"+key+" value"+value);
        }
    }
相关推荐
.鸣1 小时前
set和map
java·学习
ha_lydms1 小时前
5、Spark函数_s/t
java·大数据·python·spark·数据处理·maxcompute·spark 函数
黄河滴滴2 小时前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
侠客行03172 小时前
Mybatis二级缓存实现详解
java·mybatis·源码阅读
老华带你飞2 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
Edward111111113 小时前
tomcat_servlet
java·servlet·tomcat
短剑重铸之日3 小时前
SpringBoot声明式事务的源码解析
java·后端·spring·springboot
李白的粉3 小时前
基于springboot的银行客户管理系统(全套)
java·spring boot·毕业设计·课程设计·源代码·银行客户管理系统
JIngJaneIL3 小时前
基于springboot + vue房屋租赁管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
努力的小南4 小时前
Java字节码文件常量池索引两个问题
java·常量池·字节码文件·黑马jvm字节码文件常量池索引