概述
1.传统方式遍历List集合
package com.Stream;
import java.util.ArrayList;
import java.util.List;
public class Demo01List {
public static void main(String[] args) {
//创建一个List集合,存储姓名
List<String> list = new ArrayList<>();
list.add("张无忌");
list.add("周芷若");
list.add("赵敏");
list.add("张强");
list.add("张三丰");
//对List集合中的元素进行过滤,只要以张开头的元素,存储到一个新的集合中
List<String> listA = new ArrayList<>();
for (String s : list) {
if (s.startsWith("张")){
listA.add(s);
}
}
//对listA集合进行过滤,只要姓名长度为3的人,存储到一个新的集合中
List<String> listB = new ArrayList<>();
for (String s : listA) {
if (s.length()==3){
listB.add(s);
}
}
//遍历ListB集合
for (String s : listB) {
System.out.println(s);
}
}
}
2. 使用Stream流的方式,遍历集合
Stream流的方式,遍历集合,对集合中的数据进行过滤
Stream流是JDK1.8之后出现的
关注的是做什么,而不是怎么做
package com.Stream;
import java.util.ArrayList;
import java.util.List;
/*
使用Stream流的方式,遍历集合,对集合中的数据进行过滤
Stream流是JDK1.8之后出现的
关注的是做什么,而不是怎么做
*/
public class Demo02Stream {
public static void main(String[] args) {
//创建一个List集合,存储姓名
List<String> list = new ArrayList<>();
list.add("张无忌");
list.add("周芷若");
list.add("赵敏");
list.add("张强");
list.add("张三丰");
//对List集合中的元素进行过滤,只要以张开头的元素,存储到一个新的集合中
//对listA集合进行过滤,只要姓名长度为3的人,存储到一个新的集合中
//遍历ListB集合
list.stream().filter((String name)->{
return name.startsWith("张");}).filter((String name)->{
return name.length()==3;}).forEach((String name)->{
System.out.println(name); });
//优化Lambda表达式
list.stream().filter(name->name.startsWith("张"))
.filter(name->name.length()==3)
.forEach(name-> System.out.println(name));
}
}
最后
以上就是发嗲冬瓜为你收集整理的遍历集合(传统方式以及使用Stream流)的全部内容,希望文章能够帮你解决遍历集合(传统方式以及使用Stream流)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复