详解Java集合遍历

1.集合体系架构概述

Java集合体系架构分为Collection和Map两大集合框架,其中Collection是单列集合的顶级接口,具有单列存储的特点。Map是双列集合的顶级接口。在这里插入图片描述

2.实现Collection接口的集合遍历方式

实现Collection接口的集合均可以使用下面这三种方法进行遍历;

// 方式1:迭代器 遍历
Iterator<Integer> iterator = coll.iterator();
//hasNext() 方法会判断当前指针所指的位置是否为null,若为null则返回false,否则返回true
while (iterator.hasNext()) {   
    //next() 方法会返回当前指针所指向的元素,并移动指针到下一个元素
    Integer next = iterator.next();
    System.out.println(next);
}

// 方式2:Stream API 遍历
coll.forEach(System.out::println);

// 方式3:增强For循环 遍历
for (Integer value : coll) {
    System.out.println(value);
}
3.实现List接口的集合遍历方式(单列集合遍历)

实现List接口的集合可以通过以下几种方式进行遍历

// 方式1:迭代器遍历
Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()){
    Integer next = iterator.next();
	System.out.println(next);
}
// 方式2:通过ListIterator迭代器 进行遍历,ListIterator继承自Iterator
ListIterator迭代器 进行遍历,ListIterator继承字<Integer> integerListIterator = list.listIterator();
while (integerListIterator.hasNext()){
    Integer next = integerListIterator.next();
	System.out.println(next);
}

// 方式3:Stream API进行遍历
list.stream().forEach(System.out::println);

// 方式4:增强For循环 遍历
for (Integer i : list) {
    System.out.println(i);
}

// 方式5:普通for 遍历
for (int i = 0; i < list.size(); i++) {
    Integer i1 = list.get(i);
    System.out.println(i1);
}
4.实现Map接口的集合遍历方式(双列集合遍历)

实现Map接口的集合可以通过以下几种方式进行遍历;

// 方式1:Iterator迭代器
Iterator<String> iterator = map.keySet().stream().iterator();
while (iterator.hasNext()) {
    String str = iterator.next();
    Integer value = map.get(str);
    System.out.println(value);
}

// 方式2:通过遍历Entry实体获取
Set<Map.Entry<String, Integer>> entries = map.entrySet();
for (Map.Entry<String, Integer> entry : entries) {
    String key = entry.getKey();
    Integer value = map.get(key);
    System.out.println("key:" + key + ",value:" + value);
}

// 方式3:通过遍历keySet进行遍历
for (String str : map.keySet()) {
    Integer value = map.get(str);
    System.out.println(value);
}

// 方式4:通过使用Stream API遍历key列表实现
map.keySet().stream().forEach(
    str -> {
        Integer value = map.get(str);
        System.out.println(value);
    }
);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值