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);
        }
    }
相关推荐
stein_java34 分钟前
springMVC-10验证及国际化
java·spring
weixin_4786897637 分钟前
C++ 对 C 的兼容性
java·c语言·c++
LUCIAZZZ1 小时前
HikariCP数据库连接池原理解析
java·jvm·数据库·spring·springboot·线程池·连接池
sky_ph1 小时前
JAVA-GC浅析(二)G1(Garbage First)回收器
java·后端
IDRSolutions_CN2 小时前
PDF 转 HTML5 —— HTML5 填充图形不支持 Even-Odd 奇偶规则?(第二部分)
java·经验分享·pdf·软件工程·团队开发
hello早上好2 小时前
Spring不同类型的ApplicationContext的创建方式
java·后端·架构
HelloWord~3 小时前
SpringSecurity+vue通用权限系统2
java·vue.js
让我上个超影吧3 小时前
黑马点评【基于redis实现共享session登录】
java·redis
BillKu4 小时前
Java + Spring Boot + Mybatis 插入数据后,获取自增 id 的方法
java·tomcat·mybatis
全栈凯哥4 小时前
Java详解LeetCode 热题 100(26):LeetCode 142. 环形链表 II(Linked List Cycle II)详解
java·算法·leetcode·链表