当前位置: 首页 > 面试题库 >

解析和翻译Java 8 Lambda表达式

栾钟展
2023-03-14
问题内容

在C#中,您可以将lambda表达式包含在表达式树对象中,然后可能对其进行解析。我想知道在Java中这是否还可以吗?

我正在寻找的是做这样的事情:

BooksRepository.getAll()
.where(b -> b.getIban() == "SomeIban")
.and(b -> b.getAuthor() == "SomeAuthor"); //etc.

然后,BooksRepository应该基于指定为lambda的谓词以某种方式将该查询转换为以下RESTful API请求:

GET http://mylibrary.com/books?Iban=SomeIban&Author=SomeAuthor

然后将结果返回给客户端。知道这在Java中是否可行?


问题答案:

是的,有可能。我制作了一个库来做到这一点:JaQue



 类似资料:
  • 我正在寻找一个JAVA库来解析 我的要求: 支持所有的值类型(例如int,双,布尔,String等) 支持所有已知的数学 有什么建议吗?

  • 由来 很多JavaBean嵌套有很多层对象,这其中还夹杂着Map、Collection等对象,因此获取太深的嵌套对象会让代码变得冗长不堪。因此我们可以考虑使用一种表达式还获取指定深度的对象,于是BeanResolver应运而生。 原理 通过传入一个表达式,按照表达式的规则获取bean下指定的对象。 表达式分为两种: .表达式,可以获取Bean对象中的属性(字段)值或者Map中key对应的值 []表

  • 我对Java8的新特性有点陌生。我正在学习如何通过条目过滤地图。我已经看了这个教程和这个帖子我的问题,但我无法解决。

  • TERM 术语 script 脚本 utility 实用程序 prototype 原型 builtin 内建命令 hard-coded 硬编码 magic number 幻数 generalize 泛化 POSIX 可移植操作系统接口 stdin 标准输入

  • 问题内容: for ( SomeListElement element : objectWithList.getList() ) { … } 上面的摘录翻译成什么? 我最感兴趣的是该方法调用一次还是每次迭代/元素调用一次? 问题答案: 它相当于

  • 我试图创建一个使用Java的lambda表达式的示例,我使用的是官方的JDK8。我的例子运行成功。但是当我试图检查编译器如何将lambda表达式翻译成字节代码时,这让我有些困惑。下面是我的示例的代码:- 在本文中,他们讨论了编译器如何将lambda表达式转换为字节码。根据本文将lambda表达式转换为方法以及lambda表达式声明的位置,有lambda方法的引用。下面的例子在文章中: 我的例子运行