java面向函数编程简单应用
2024-08-26 11:13:19
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Predicate;
import java.util.logging.Filter; public class 函数式接口 { public static void main(String[] args) {
List<Apple> apples = Arrays.asList(new Apple("red", 10),
new Apple("green", 20), new Apple("red", 16));
List<Apple> apples1 = filterApple(apples, apple -> (apple.color).equals("red") && apple.size>10);
apples1.stream().forEach(System.out::print);
}
public static List<Apple> filterApple(List<Apple> list,Predicate<Apple> predicate){
List<Apple> list1 = new ArrayList<>();
for (Apple apple : list) {
if(predicate.test(apple)){
list1.add(apple);
}
}
return list1;
}
} class Apple {
String color;
int size; @Override
public String toString() {
return "Apple{" +
"color='" + color + '\'' +
", size=" + size +
'}';
} public Apple(String color, int size) {
this.color = color;
this.size = size;
} public String getColor() {
return color;
} public void setColor(String color) {
this.color = color;
} public int getSize() {
return size;
} public void setSize(int size) {
this.size = size;
}
}
最新文章
- SQLite剖析之数据类型
- Ubuntu下的MySQL安装
- ORACLE执行详解
- C++基础知识易错点总结(2)
- Android开发之详解五大布局
- Android软件测试Monkey测试工具
- C#6.0语法糖剖析(一)
- 使用VisualStudio2010创建C#应用程序
- hive中sql解析出对应表和字段的调查
- 蚁群算法 matlab程序(已执行)
- Android - 分享内容
- Claris and XOR
- PHP 递归实现层级树状展现数据
- __call()和__callStatic()实例详解
- C++数组做参数
- Cisco 关闭命令同步提示信息
- spark-MLlib之线性回归
- 微信小程序一些demo链接地址
- mac使用brew安装mysql
- js实现随机的四则运算题目(2)-更新界面
热门文章
- Python 之pyinstaller模块打包成exe文件
- [树链剖分]BZOJ3589动态树
- 【多线程与并发】Java中的12个原子操作类
- [转]重命名PostgreSQL数据库
- OpenCV 3.4.2 环境搭建(适用于Ubuntu 一键安装)
- [String]两个右补空格使字符串达到固定长度的函数 来自网上 请君自取
- android ------ 实现高德定位并获取相应信息 ( 最新版高德SDK 和 Android SDK版本)
- flutter DropdownButton使用
- osg编译日志
- 转 zabbix 优化方法 以及 后台数据库查询方法 两则