java新特性stream
2024-09-05 05:59:14
java新特性stream,也称为流式编程。
在学习stream之前先了解一下java内置的四大函数
第一种函数式函数,后面是lambda表达式写法
/*Function<String,Integer> function = new Function<String, Integer>() {
@Override
public Integer apply(String s) {
return null;
}
};*/
//函数式 有请求参数和返回值
Function<String, Integer> function = s -> {
return 1024;
};
System.out.println(function.apply("函数式"));
第二种布尔型函数(断定型参数)
/* Predicate<String> predicate = new Predicate<String>() {
@Override
public boolean test(String s) {
return false;
}
};*/
//布尔型函数(断定型参数) 有请求参数和返回boolean值
Predicate<String> predicate = s -> {
return s.isEmpty();
};
System.out.println(predicate.test("sss"));
第三种消费型函数
/* Consumer<String> consumer = new Consumer<String>() {
@Override
public void accept(String s) { }
};*/
//消费型函数 有请求参数和无返回值
Consumer<String> consumer = s -> {
System.out.println(s);
};
consumer.accept("java ");
第四种
/*Supplier<String> supplier = new Supplier() {
@Override
public String get() {
return null;
}
};*/ //供给型函数 无请求参数和有返回值
Supplier<String> supplier = ()-> {
return "hello";
};
System.out.println(supplier.get()); }
我们再看一下stream常用方法:
filter:里面传入一个Predicate布尔型函数,里面返回布尔值
Stream<T> filter(Predicate<? super T> predicate)
forEach:里面传入Consumer消费型函数,有请求参数和无返回值
void forEach(Consumer<? super T> action)
map:里面传入Function函数式 有请求参数和返回值
<R> Stream<R> map(Function<? super T,? extends R> mapper)
generate:里面传入Supplier供给型函数 无请求参数和有返回值
static <T> Stream<T> generate(Supplier<T> s) 待更。
最新文章
- 安装VS2010水晶报表插件
- 文件与base64二进制转换
- NET平台和C#
- .NET常用的扩展方法整理
- IOS 客户端测试入门.pdf
- Effective Java2读书笔记-类和接口(四)
- asp.net个人笔记
- 基于visual Studio2013解决C语言竞赛题之1006填空
- Java的λ表达(lambda)
- SSH整合 pom.xml
- Bootloader升级方式一————擦、写flash在RAM中运行
- 自用IP查询网址 - 地址 - 归属地 - 地理位置 - 2017.5
- [Oracle]获得PDB相关的xml 文件
- 条理清晰的搭建SSH环境之添加所需jar包
- 使用laravel搭建CURD后台页面
- C# wkhtmltopdf 将html转pdf
- jquery使页面滚动到底部
- 【bzoj5123】[Lydsy12月赛]线段树的匹配 树形dp+记忆化搜索
- uilabel 自适应
- js常用共同方法