lambda 相关问题

编程语言中的匿名函数或闭包,如Lisp,C#,C ++,Lua,Python,Ruby,JavaScript或Java。 (另外,lambda表达式。)

递归 Lambda 加入完整的父子层次结构

我想要像图片中最后一列那样的结果(完整层次结构)。 我可以创建多个支撑柱。但我几乎确信可以使用递归 lambda 来做到这一点。 我做了...

回答 1 投票 0

捕获函数指针作为引用会导致段错误

我试图理解为什么以下代码会导致段错误: #包括 #包括 结构体 Foo { Foo() = 默认值; 无效回调1() { std::cout...

回答 1 投票 0

捕获函数指针作为参考

我想了解为什么以下代码会出现段错误: #包括 #包括 结构体 Foo { Foo() = 默认值; 无效回调1() { std::cout &l...

回答 1 投票 0

将 SQL ROW_NUMBER 转换为 Linq 会产生错误的翻译

我有以下 SQL 代码,我想转换为 Entity Framework Core 8 中的 Linq lambda 查询。 从(选择 * SELECT ROW_NUMBER() OVER (PARTITION BY StaffId,[Location] ORDER BY [Timestamp] DE...

回答 1 投票 0

为什么我的 lambda 表达式可以编译,而等效方法引用却不能编译?是仿制药有问题还是我有问题?

我正在尝试将方法引用与泛型类一起使用,并且注意到我可以使其与等效的 lambda 表达式一起使用,但不能与方法引用一起使用。我想知道是否有人可以

回答 1 投票 0

在 Lambda 和 IEnumerable 上使用 Group by 的问题 - ASP.Net

我需要渲染按 CreateDate 分组的事件(游戏)列表 在控制器中我有 公共 ActionResult Index() { var gs = db.Games.Include(p => p.Activity).GroupBy(e => e.CreateDate);...

回答 2 投票 0

Kotlin 中不带大括号的 Lambda 表达式

我们可以使用不带大括号的 lambda 表达式吗?我尝试将 2 个字符串连接成 1 个。 这是代码: 有趣的主(){ println(concat("你好", "世界")) } val concat :(字符串,...

回答 1 投票 0

Google 表格:使用条件函数将一个单元格中的句子分成后续单元格中的多个部分

我想将一个单元格的句子分成同一行中每个包含 4 个单词的单元格。 如果句子超过12个单词,第12个单词应附加“...”,并且不再添加单词。特别

回答 1 投票 0

为什么 max() 在这种情况下返回 7?

l = [7, 9, 5, 6, 13, 5, 15, 3] t = max(l, key=lambda g:g 如果 g%9==1 否则 0) t是l的最大元素,除以9的余数是1。 在本例中,t 等于 7。但此列表不等于

回答 1 投票 0

为什么在 lambda 函数的参数列表中使用 *kwargs.values() 会导致语法错误?

(lambda **kwargs: *kwargs.values())(a=1, b=2) 此代码片段引发 SyntaxError,特别指出“无效语法”,指向参数 lis 中使用 * 运算符...

回答 1 投票 0

这个 Java 构造 `(InputStream is) -> () -> {}`

我不明白我在文档中看到的这个 Java 结构。 public static HttpResponse.BodySubscriber 映射(HttpResponse.BodySubscriber 上游, 功能 我不理解我在此处的文档中看到的 Java 构造。 public static HttpResponse.BodySubscriber 映射(HttpResponse.BodySubscriber 上游, 函数映射器) 我认为我理解但似乎无法复制的部分是示例: public static <W> HttpResponse.BodySubscriber<Supplier<W>> asJSON(Class<W> targetType) { HttpResponse.BodySubscriber<InputStream> upstream = HttpResponse.BodySubscribers.ofInputStream(); HttpResponse.BodySubscriber<Supplier<W>> downstream = HttpResponse.BodySubscribers.mapping( upstream, (InputStream is) -> () -> { try (InputStream stream = is) { ObjectMapper objectMapper = new ObjectMapper(); return objectMapper.readValue(stream, targetType); } catch (IOException e) { throw new UncheckedIOException(e); } } ); return downstream; } 特别是(InputStream is) -> () -> {部分。当我读到它时,我认为它应该是一个 Supplier,它提供了一个 Function 来完成它所做的事情。然而,当我尝试自己编写这样的代码时,它不起作用。 public static void main(String[] args) throws IOException { String r = myMethod((String s)->()->{return s + "ddd";}); } public static String myMethod(Function<String, String> func) { return func.apply("Hello"); } 给我编译错误Target type of a lambda conversion must be an interface。然而,Function是一个接口。 我不明白什么? 这不是一个函数,这是一个函数 这是 lambda 表达式中的 lambda 表达式,您可以通过使用两个 -> 标记来查看它。在您的情况下,inputParam -> resultExpression,在这种情况下,resultExpression 本身是 () -> resultExpression。所以,是的,一个函数 我应该像这样模仿。 public static void main(String[] args) throws IOException { Supplier<String> r = myMethod((String s)->()->{return s + "ddd";}); } public static Supplier<String> myMethod(Function<String, Supplier<String>> func) { return func.apply("Hello"); } 感谢所有评论者。

回答 1 投票 0

相同的 Java SerializedLambda 对 implMethodKind 返回不同的结果

我是 Ronald,JobRunr 的作者。 JobRunr 是一个后台作业调度库,它使用 SerializedLambda 和 ASM 来分析 Java 8 lambda 并将其转换为后台作业。 最近犯了一个错误...

回答 2 投票 0

无法从 lambda 连接到 Redshift

我创建了一个无服务器 Redshift 集群,并希望使用 lambda 从 Redshift 读取/写入数据。 在 lambda 中配置 VPC、子网和安全组 相同的VPC、子网和安全组...

回答 1 投票 0

这是在 lambda 函数内设置/删除布尔标志的最佳方法

假设我有一个货币汇率加载器,仅当所有汇率加载成功时才返回 isLoaded=true 结果: //List listFrom = Stream.of("EUR", "RUB").collect(toList()); //列表...

回答 4 投票 0

为什么这些相似闭包的捕获行为不同?

为什么 df 在其闭包中需要 &delta,而 df2 只能与 delta 一起使用?我怀疑这与通过值或引用传递有关,但我不能完全确定它。 #包括 为什么 df 需要 &delta 来关闭,而 df2 只能与 delta 一起使用?我怀疑它与通过值或引用传递有关,但我不能完全确定它。 #include <iostream> #include <cmath> #include <iomanip> template <typename Function> auto derivative(Function f, const double delta) { return [&f,delta](double x)->double{ return (f(x+delta) - f(x-delta)) / (2*delta); }; } int main () { const double delta = 0.00001; auto f = [](double x) -> double {return x * std::sin(x);}; auto df = [&f,&delta](double x)->double{return (f(x+delta) - f(x-delta)) / (2*delta);}; auto df2 = derivative(f,delta); for (double x = 0; x<5; x+= 0.5){ std::cout << std::setprecision(4) << "f(" << x << ") = " << f(x) << " f'= " << df(x) << " f'2= " << df2(x) << std::endl; } } 我最初尝试在 &delta 内的闭包内使用 df2 作为 derivative,但它将 delta 的值从 1e-5 更改为更低的值,例如 1e-301。当我使用 delta 时,一切都按预期工作。 在函数derivative中,变量delta是一个局部变量,其生命周期随着函数derivative的结束而结束。 如果通过引用捕获它,则 lambda 在调用时将使用无效引用,因为该变量不再存在。

回答 1 投票 0

添加 VPC 配置后调用 lambda 超时

我正在使用无服务器框架来创建 lambda。我创建了一个简单的 Lambda 函数,它从 Mongo 实例进行查询并返回响应。最初,我使用

回答 2 投票 0

如何在java 8中映射后返回可选值

我需要获取作为标识符的字符串值,但这返回 void 而不是字符串值。 如何返回字符串值? 字符串 previousReadyForHome = information.getPreviousCon...

回答 2 投票 0

如何在每个按钮上使用动态命令循环

我正在尝试在创建循环时更改按钮命令。 使用它来更改数据库控件中的值,但按钮不更改。 具体代码: CamposDinamcosBE[i].configure(co...

回答 1 投票 0

python:来自多个字典的联合键?

我有 5 个字典,我想要它们的键的并集。 alldict = [dict1, dict2, dict3, dict4, dict5] 我试过 allkey = reduce(lambda x, y: set(x.keys()).union(y.keys()), alldict) 但它给了我...

回答 6 投票 0

使用 +(一元加)解决 lambda 的函数指针和 std::function 上的不明确重载

在下面的代码中,第一次调用 foo 是不明确的,因此无法编译。 第二个,在 lambda 之前添加 +,解析为函数指针重载。 #包括<

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.