【翻译】Java中遍历集合元素的不同方法

【翻译】Java中遍历集合元素的不同方法

原文地址:Different ways to iterate over Collections in Java

        本文通过代码演示遍历集合元素不同的方法。这些方法适用于任何场景。

1、可遍历对象的forEach方法(Java 8)

        Java 8中引入了forEach()方法,该方法可用于任何Iterable对象,传入实现了函数式接口java.util.function.Consumer的对象。如:

import java.util.Arrays;
import java.util.Collection;
import static java.lang.System.out;
public class CollectionIterator {
    public static void main(String[] args) {
        Collection<String> collection = Arrays.asList("How","To","Iterator","In","Java");
        collection.forEach(s -> out.println(s));
    }
}  

2、Javaforeach循环(Java 5)

        foreach循环的语法是:

for(Type var : Iterable){
    //do something with "var"
}

如:

import java.util.Arrays;
import java.util.Collection;
import static java.lang.System.out;
public class CollectionIterator {
    public static void main(String[] args) {
        Collection<String> collection = Arrays.asList("How","To","Iterator","In","Java");
        for(String s : collection){
            out.println(s);
        }
    }
}  

3、java.util.Iterator(Java 2)

        使用迭代器仍然是最常用的方法。

import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import static java.lang.System.out;
public class CollectionIterator {
    public static void main(String[] args) {
        Collection<String> collection = Arrays.asList("How","To","Iterator","In","Java");
        Iterator<String> itr = collection.iterator();
        while(itr.hasNext()){
            out.println(itr.next());
        }
    }
}  

4、传统的循环

        这种方法适用于支持利用索引下标进行随机方法的集合,如:ArrayList。这种循环的方式早在19世纪70年代的C语言中就被发明和使用了。循环的语法是:

for(int t; test; change){
    //do something
}

如:

import static java.lang.System.out;
import java.util.Arrays;
import java.util.List;
public class CollectionIterator {
    public static void main(String[] args) {
        List<String> list = Arrays.asList("How","To","Iterator","In","Java");
        for(int i = 0; i < list.size(); i++){
            out.println(list.get(i));
        }
    }
} 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值