练习 集合元素处理

传统方式

public class demo01StreamTest {
public static void main(String[] args) {
    ArrayList<String> one =new ArrayList<>();
    one.add("张三");
    one.add("李四");
    one.add("赵柳二");
    ArrayList<String>one1= new ArrayList<>();
    //只要三个字的名字,存储到一个新集合中
    for (String name: one) {
        if(name.length()==3){
            one1.add(name);
        }
    }
    ArrayList<String>one2= new ArrayList<>();
    //只要前三个,存储到新集合中
    for (int i = 0; i <3; i++) {
        one2.add(one.get(i));
    }

    ArrayList<String> two =new ArrayList<>();
    two.add("王五");
    two.add("赵六");
    two.add("冯老七");
    two.add("张国荣");
    two.add("张学友");
    two.add("张大哥");
    ArrayList<String>two1 =new ArrayList<>();
    //只要姓张的,存储到一个新集合中
    for (String name : two) {
        if(name.startsWith("张")){
            two1.add(name);
        }
    }
    //第二队伍筛选之后不要前2个,存储到一个新集合中
    ArrayList<String> two2=new ArrayList<>();
    for (int i = 2; i < two1.size(); i++) {
        two2.add(two1.get(i));
    }
    //将两个队伍合并一个队伍 存储到一个新集合中
    ArrayList<String> all= new ArrayList<>();
    all.addAll(one2);
    all.addAll(two2);
    ArrayList<Person> list =new ArrayList<>();
    for (String name : all) {
        list.add(new Person(name));
    }
    for (String name : all) {
        System.out.print(name+" ");
    }
}
}

使用Stream方式

public class demo01StreamTest {
public static void main(String[] args) {
    ArrayList<String> one =new ArrayList<>();
    one.add("张三");
    one.add("李四");
    one.add("赵柳二");
    ArrayList<String>one1= new ArrayList<>();
    //只要三个字的名字,存储到一个新集合中
    for (String name: one) {
        if(name.length()==3){
            one1.add(name);
        }
    }
    ArrayList<String>one2= new ArrayList<>();
    //只要前三个,存储到新集合中
    for (int i = 0; i <3; i++) {
        one2.add(one.get(i));
    }

    ArrayList<String> two =new ArrayList<>();
    two.add("王五");
    two.add("赵六");
    two.add("冯老七");
    two.add("张国荣");
    two.add("张学友");
    two.add("张大哥");
    ArrayList<String>two1 =new ArrayList<>();
    //只要姓张的,存储到一个新集合中
    for (String name : two) {
        if(name.startsWith("张")){
            two1.add(name);
        }
    }
    //第二队伍筛选之后不要前2个,存储到一个新集合中
    ArrayList<String> two2=new ArrayList<>();
    for (int i = 2; i < two1.size(); i++) {
        two2.add(two1.get(i));
    }
    //将两个队伍合并一个队伍 存储到一个新集合中
    ArrayList<String> all= new ArrayList<>();
    all.addAll(one2);
    all.addAll(two2);
    ArrayList<Person> list =new ArrayList<>();
    for (String name : all) {
        list.add(new Person(name));
    }
    for (String name : all) {
        System.out.print(name+" ");
    }
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值