进阶day07-Stream中的常用方法练习(重点)
This commit is contained in:
16
javaSE-day07/src/com/inmind/stream03/Person.java
Normal file
16
javaSE-day07/src/com/inmind/stream03/Person.java
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
package com.inmind.stream03;
|
||||||
|
|
||||||
|
public class Person {
|
||||||
|
String name;
|
||||||
|
|
||||||
|
public Person(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "Person{" +
|
||||||
|
"name='" + name + '\'' +
|
||||||
|
'}';
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@ package com.inmind.stream03;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
现在有两个ArrayList集合存储队伍当中的多个成员姓名,要求使用传统的for循环(或增强for循环)依次进行以下若干操作步骤:
|
现在有两个ArrayList集合存储队伍当中的多个成员姓名,要求使用传统的for循环(或增强for循环)依次进行以下若干操作步骤:
|
||||||
@@ -35,5 +36,35 @@ public class StreamTest25 {
|
|||||||
two.add("张二狗");
|
two.add("张二狗");
|
||||||
two.add("张天爱");
|
two.add("张天爱");
|
||||||
two.add("张三");
|
two.add("张三");
|
||||||
|
|
||||||
|
/*
|
||||||
|
1. 第一个队伍只要名字为3个字的成员姓名;
|
||||||
|
2. 第一个队伍筛选之后只要前3个人;
|
||||||
|
* *//*
|
||||||
|
|
||||||
|
Stream<String> stream1 = one.stream().filter(s -> s.length() == 3).limit(3);
|
||||||
|
|
||||||
|
*//*
|
||||||
|
3. 第二个队伍只要姓张的成员姓名;
|
||||||
|
4. 第二个队伍筛选之后不要前2个人;
|
||||||
|
*//*
|
||||||
|
Stream<String> stream2 = two.stream().filter(s -> s.startsWith("张")).skip(2);
|
||||||
|
|
||||||
|
//5. 将两个队伍合并为一个队伍;
|
||||||
|
Stream<String> stream = Stream.concat(stream1, stream2);
|
||||||
|
//6.根据姓名创建Person对象(String流转为Person流)
|
||||||
|
Stream<Person> personStream = stream.map(s -> {
|
||||||
|
return new Person(s);
|
||||||
|
});
|
||||||
|
//7. 打印整个队伍的Person信息。
|
||||||
|
personStream.forEach(p-> System.out.println(p));*/
|
||||||
|
|
||||||
|
|
||||||
|
Stream.concat(
|
||||||
|
one.stream().filter(s -> s.length() == 3).limit(3),
|
||||||
|
two.stream().filter(s -> s.startsWith("张"))
|
||||||
|
.skip(2))
|
||||||
|
.map(s -> new Person(s)).forEach(p-> System.out.println(p));
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user