- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java 流过滤器
Java 流过滤器
Java流 - Java流过滤器
过滤操作产⽣过滤流,即输⼊流的⼦集,其元素对于指定的谓词计算为true 。
predicate是⼀个接 元素并返回布尔值的函数。
过滤的流具有与输⼊流相同的类型。
如果predicate对所有元素求值为false ,它将⽣成⼀个空流。
以下代码仅在⼥性中使⽤员⼯流和过滤器。 它将⼥性映射到他们的名字,并将它们打
印在标准输出上。
import java.time.LocalDate;
import java.time.Month;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[ args) {
Employee.persons()
.stream()
.filter(Employee::isFemale)
.map(Employee::getName)
.forEach(System.out::println);
}
}
class Employee {
public static enum Gender {
MALE, FEMALE
}
private long id;
private String name;
private Gender gender;
private LocalDate dob;
private double income;
public Employee(long id, String name, Gender gender, LocalDate d
double income) {
this.id = id;
= name;
this.gender = gender;
this.dob = dob;
this.income = income;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
= name;
}
public Gender getGender() {
return gender;
}
public boolean isMale() {
return this.gender == Gender.MALE;
}
public boolean isFemale() {
return this.gender == Gender.FEMALE;
}
public void setGender(Gender gender) {
this.gender = gender;
}
public LocalDate getDob() {
return dob;
}
public void setDob(LocalDate dob) {
this.dob = dob;
}
public double getIncome() {
return income;
}
public void setIncome(double income) {
this.income = income;
}
public static ListEmployee persons() {
Employee p1 = new Employee(1, Jake, Gender.MALE, LocalDate.o
Month.JANUARY, 1), 2343.0);
Employee p2 = new Employee(2, Jack, Gender.MALE, LocalDate.o
Month.JULY, 21), 7100.0);
Employee p3 = new Employee(
文档评论(0)