Java8过滤器(Filter)
1、在Java之前对List进行过滤的方式
public class BeforeJava8 {
public static void main(String[] args) {
List<Person> peoples = Arrays.asList(
new Person("java", 22),
new Person("js", 35),
new Person("css", 31)
);
Person result = getStudentByName(peoples, "java");
System.out.println(result);
}
private static Person getStudentByName(List<Person> peoples, String name) {
Person result = null;
for (Person person : peoples) {
if (name.equals(person.getName())) {
result = person;
}
}
return result;
}
}
2、在Java8使用Filter过滤List
public class FilterJava8 {
public static void main(String[] args) {
List<Person> peoples = Arrays.asList(
new Person("java", 22),
new Person("js", 35),
new Person("css", 31)
);
Person result1 = peoples.stream()
.filter(p -> "java".equals(p.getName()))
.findAny()
.orElse(null);
System.out.println(result1);
Person result2 = peoples.stream()
.filter(p -> "spring".equals(p.getName()))
.findAny()
.orElse(null);
System.out.println(result2);
Person result3 = peoples.stream()
.filter((p) -> "java".equals(p.getName()) && 22 == p.getAge())
.findAny()
.orElse(null);
System.out.println(result3);
// 使用map收集
String name = peoples.stream()
.filter(p -> "js".equals(p.getName()))
.map(Person::getName)
.findAny()
.orElse("");
System.out.println(name);
System.out.println("---------");
List<String> names = peoples.stream()
.map(Person::getName)
.collect(Collectors.toList());
names.forEach(System.out::println);
}
}
Java8过滤器(Filter)的更多相关文章
- Angularjs在控制器(controller.js)的js代码中使用过滤器($filter)格式化日期/时间实例
Angularjs内置的过滤器(filter)为我们的数据信息格式化提供了比较强大的功能,比如:格式化时间,日期.格式化数字精度.语言本地化.格式化货币等等.但这些过滤器一般都是在VIEW中使用的,比 ...
- 网站过滤器Filter
实际上,Filter与Servlet及其相似,区别只是FIlter的doFilter()方法里多了一个FilterChain的参数,通过该参数可以控制是否放行用户的请求.网站有了过滤器十分的方便,可以 ...
- paip.输出内容替换在Apache 过滤器filter的设置
paip.输出内容替换在Apache 过滤器filter的设置 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog ...
- java Servlet中的过滤器Filter
web.xml中元素执行的顺序listener->filter->struts拦截器->servlet. 1.过滤器的概念 Java中的Filter 并不是一个标准的Servlet ...
- [ionic开源项目教程] - 第6讲 过滤器filter的使用
过滤器filter的使用 1.回顾 再熟悉一下tab1.html的代码: <div class="list"> <a ng-repeat="item i ...
- selvert的过滤器filter处理中文乱码
注意问题:在学习用selvert的过滤器filter处理中文乱码时,在filter配置初始化时用了utf-8处理中文乱码,而在提交的jsp页面中却用了gbk.虽然两种都可以出来中文乱码,但是却造成了处 ...
- MVC之 自定义过滤器(Filter)
MVC之 自定义过滤器(Filter) 一.自定义Filter 自定义Filter需要继承ActionFilterAttribute抽象类,重写其中需要的方法,来看下ActionFilterAttri ...
- Servlet中的过滤器Filter用法
1.过滤器的概念 Java中的Filter 并不是一个标准的Servlet ,它不能处理用户请求,也不能对客户端生成响应. 主要用于对HttpServletRequest 进行预处理,也可以对Http ...
- Servlet中的过滤器Filter详解
加载执行顺序 context-param->listener->filter->servlet web.xml中元素执行的顺序listener->filter->stru ...
随机推荐
- js判断设备是否为安卓
var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > - ...
- javascript的数组之map()
map()方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的回调函数后返回的结果.新数组 // ES6 let numbers = [1, 5, 10, 15]; let doubles ...
- 微信小程序调用高德地图
index.wxml: longitude:经度 latitude:维度 地图所定位的区域 index.js 地图所定位的点
- maven jdk版本
http://maven.apache.org/docs/history.html Maven Releases History Date format is: YYYY-MM-DD Maven 3 ...
- java连接服务器语法
一.连接sql步骤 1.加载数据库驱动类 2.获取数据库连接对象 3.写sql4.创建PreparedStatement对象5.执行查询返回ResultSet结果集对象7.释放资源 public st ...
- 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...
- Django ORM中datetiem数据类型字段无法对比处理办法
在做商城项目中浏览足迹时,我利用浏览商品的ID和浏览的时间保存到browse表中,然后在我的足迹页面根据最近日期进行展示 条件:每天/个商品只能如一次表 后台代码如下: #存储浏览足迹到browse表 ...
- L1-039. 古风排版
L1-039. 古风排版 中国的古人写文字,是从右向左竖向排版的.本题就请你编写程序,把一段文字按古风排版. 输入格式: 输入在第一行给出一个正整数N(<100),是每一列的字符数.第二行给出一 ...
- ESP8266 RTOS SDK编译环境搭建
前提条件 1. linux操作系统或者windows下的linux虚拟机或者OS X操作系统 2. 联网 下载 * [Mac](https://dl.espressif.com/dl/xtensa-l ...
- python commands包不支持windows环境与如何在windows下使用的简易方法
commands模块不支持windows环境,让我们来看看. >>> import commands >>> print commands.getoutput('d ...