lambda表达式:list.stream().filter()用法《1》

先创建一个实体类:

public class Emp {
	private Integer id;
	private Integer age;
	private String gender;
	private String firstName;
	private String lastName;
	
	

	public Emp() {
		super();
	}

	public Emp(Integer id, Integer age, String gender, String fName, String lName) {
		this.id = id;
		this.age = age;
		this.gender = gender;
		this.firstName = fName;
		this.lastName = lName;
	}

	@Override
	public String toString() {
		return "Employee [id=" + id + ", age=" + age + ", gender=" + gender + ", firstName=" + firstName + ", lastName="
				+ lastName + "]";
	}

	get,set方法需要创建		
}

测试类:

public class TestEmpPredicates {
	public static void main(String[] args) {
		Emp e1 = new Emp(1, 23, "M", "Rick", "Beethovan");
		Emp e2 = new Emp(2, 13, "F", "Martina", "Hengis");
		Emp e3 = new Emp(3, 43, "M", "Ricky", "Martin");
		Emp e4 = new Emp(4, 26, "M", "Jon", "Lowman");
		Emp e5 = new Emp(5, 19, "F", "Cristine", "Maria");
		Emp e6 = new Emp(6, 15, "M", "David", "Feezor");
		Emp e7 = new Emp(7, 68, "F", "Melissa", "Roy");
		Emp e8 = new Emp(8, 79, "M", "Alex", "Gussin");
		Emp e9 = new Emp(9, 15, "F", "Neetu", "Singh");
		Emp e10 = new Emp(10, 45, "M", "Naveen", "Jain");

		List<Emp> employees = new ArrayList<Emp>();
		employees.addAll(Arrays.asList(new Emp[] { e1, e2, e3, e4, e5, e6, e7, e8, e9, e10 }));
		//	System.out.println();
		//输出没有一个Employee.age>21
		employees.stream().filter(p->p.getAge()>21).forEach(System.out::println);
		//返回符合条件的一个集合
		List<Emp> employees2 =employees.stream().filter(p->p.getAge()>21).collect(Collectors.<Emp>toList());
		employees2.forEach(p->System.out.println(p.toString()));
		//返回符合条件的第一个对象
		employees.stream().filter(p->p.getAge()>21).findFirst();
		//抽取对象中所有的id的集合
		employees.stream().map(Emp::getId).collect(Collectors.toList()).forEach(System.err::println);

	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值