java - 是否在 lambda 表达式中实例化了一个类?
问题描述
我有以下方法调用,其中我传递了一个 lambda 表达式。是否在这里隐式实例化了一个类?
printStudents(
roster,
(Student s) -> s.getGender() == Student.Sex.MALE
&& s.getAge() >= 18
&& s.getAge() <= 25
);
方法签名:
printStudents(List<Student> roster, CheckStudent checkstudet)
interface CheckStudent {
boolean test(Student s);
}
编辑
你们中的一些人建议我重构代码,但同样的问题出现了。
CheckStudent checkStudent = (Student s) -> s.getGender() == Student.Sex.MALE && s.getAge() >= 18 && s.getAge() <= 25;
Student
是否在作业的右侧实例化了一个类(我不是指类)?
解决方案
推荐阅读
- android - 为什么我的数据库删除代码不起作用
- shell - 如何从 Perl 脚本访问 shell 变量?
- c - 使用 clang 静态分析器查找函数参数的 NULL 指针取消引用
- java - DOM 中不再存在缓存的元素
- json - 基于另一个文件的属性有条件地应用子模式
- linux - Bash 将多行 Git 日志输出保存到环境变量
- android - Android Fusedlocationproviderclient 无法与 APN Sim 一起使用它与 Wifi 或普通互联网或离线一起使用
- visual-studio-code - 正则表达式匹配 = object 和 (
- python-3.x - Python将单个字符串元素与多个字符串元素结合起来
- ios - 如何使用swift向haishinkit添加多个音频输入(CMSampleBuffer)?