[Java][Stream]中间方法的应用+筛选年龄练习
2023-12-13 05:15:59
Stream中间方法的练习 提供 李白-12 杜甫-13 李商隐-14 李清照-16 白居易-15 杜牧-16 前者为姓名 后者为年龄 我现在要求抽离出 所有姓氏为李且索引>=2的人 我们分析这个需求: 1.跳过两个人.skip 2.只筛选姓李的人-statsWith 3.抽离出年龄 ->spilt
import java.util.ArrayList;
import java.util.Collections;
public class Main{
public static void main(String[] args){
/*
Stream中间方法的练习
提供 李白-12 杜甫-13 李商隐-14 李清照-16 白居易-15 杜牧-16
前者为姓名 后者为年龄 我现在要求抽离出 所有姓氏为李且索引>=2的人
我们分析这个需求:
1.跳过两个人.skip
2.只筛选姓李的人-statsWith
3.抽离出年龄 ->spilt
*/
ArrayList<String> all = new ArrayList<>();
Collections.addAll(all,"李白——12","杜甫-13","李商隐-14","李清照-16","白居易-15","杜牧-16");
all.stream().skip(2).filter(s->s.startsWith("李")).map(s->s.split("-")[1]).forEach(s->System.out.println(s));
//这里我们注解一下.map(s->s.split("-")[1])
//首先 .map中s.split("-")返回一个字符串数组 这个数字只有[0]和[1]两个索引 [0]代表前者 [1]代表后者 这里我们要取年龄 自然取[1]
//.map(s->s.split("-")[1])这个里面的“-”其实是一个正则表达式 意思是说 把用-链接的两个字符串部分分开 分别储存到[0]和[1]两个索引里面去
}
}
文章来源:https://blog.csdn.net/qq_37511412/article/details/134960755
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!