关于Java8 Stream流的利与弊 Java初学者,大神勿喷

释放双眼,带上耳机,听听看~!
   1:第一个队伍只要名字为3个字成员的姓名,存储到新集合
2:第一个队伍筛选之后只要前3人;存储到一个新集合
3:第2个队伍只要姓张的成员姓名;存储到一个新集合
4:第2个队伍不要前2人,存储到一个新集合
5:将2个队伍合并到一个队伍,存储到一个新集合
6:根据姓名创建Person对象,存储到一个新集合


//使用普通方法进行筛选 前面加了一个时间类
关于Java8 Stream流的利与弊 Java初学者,大神勿喷
import java.util.ArrayList;
public class Demo08List {
public static void main(String[] args) {
    //定义一个时间类记录开始时间
long start=System.currentTimeMillis();
    //定义一个集合
ArrayList<String>one=new ArrayList<>();
one.add(\"东方不败\");
one.add(\"流星锤\");
one.add(\"汪汪\");
one.add(\"利亚东\");
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(one1.get(i));
}
ArrayList<String>two=new ArrayList<>();
two.add(\"独孤求败\");
two.add(\"张百忍\");
two.add(\"张无忌\");
two.add(\"爱奇艺\");
two.add(\"4399\");
two.add(\"土豆\");
two.add(\"张三丰\");
ArrayList<String>two1=new ArrayList<>();
for (String name : two) {
if (name.startsWith(\"张\")){
two1.add(name);
}
}
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 (Person person : list) {
System.out.println(person);
}
      //结束的时间
long end=System.currentTimeMillis();
      //以毫秒值返回
System.out.println(end-start);
}
}


使用Stream流的方式进行筛选
import java.util.ArrayList;
import java.util.stream.Stream;

public class Demo09list {
public static void main(String[] args) {
long start=System.currentTimeMillis();
ArrayList<String> one=new ArrayList<>();
one.add(\"东方不败\");
one.add(\"裘千仞\");
one.add(\"大神\");
one.add(\"利亚东\");
one.add(\"秦始皇\");
one.add(\"???\");
one.add(\"超哥\");

Stream<String> stringStream = one.stream().filter(name ->
name.length() == 3).limit(3);
ArrayList<String>two=new ArrayList<>();
two.add(\"独孤求败\");
two.add(\"张百忍\");
two.add(\"张无忌\");
two.add(\"爱奇艺\");
two.add(\"4399\");
two.add(\"土豆\");
two.add(\"张三丰\");
// long start=System.currentTimeMillis();
Stream<String> towStream = two.stream().filter
(name -> name.startsWith(\"张\")).skip(2);
Stream.concat(stringStream,towStream).map(name->
new Person(name)).forEach(p-> System.out.println(p));
long end=System.currentTimeMillis();
      //以毫秒值返回去
        System.out.println(end-start);
}
}


关于Java8 Stream流的利与弊 Java初学者,大神勿喷关于Java8 Stream流的利与弊 Java初学者,大神勿喷
Stream流固然可以简化代码格式但是这样的执行速度值得一试??

给TA打赏
共{{data.count}}人
人已打赏
随笔日记

贵州茅台:2018年净利352亿同比增30% 拟10派145元

2020-11-9 4:04:30

随笔日记

[jvm]运行时数据区域详解

2020-11-9 4:04:32

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索