问题标签 [lambda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
31179 浏览

linq - 关于 .Select 的 Linq/lambda 问题(newby learning 3.0)

我正在玩 C#3.0 的新东西,我有这段代码(主要取自MSDN),但我只能得到真、假、真......而不是真正的价值:

我该如何解决这个问题以显示整数列表?

0 投票
4 回答
99314 浏览

c# - 排序列表降序

在 c#(3.0 或 3.5,所以我们可以使用 lambdas)中,是否有一种优雅的方式可以按降序对日期列表进行排序?我知道我可以做一个直接的排序,然后把整个事情颠倒过来,

但是是否有一个 lambda 表达式可以一步完成?

在上面的示例中,StoredDate 是一个类型为 DateTime 的属性。

0 投票
3 回答
5436 浏览

c# - 在哪里练习 Lambda 函数?

我目前正在尝试学习 C#3.0 的所有新功能。我找到了一个非常好的示例来练习 LINQ,但我找不到 Lambda 的类似内容。

你有我可以练习 Lambda 函数的地方吗?

更新

LINQpad 非常适合学习 Linq(感谢建议的人)并在某些表达式中使用一点 Lambda。但我会对 Lambda 的更具体的练习感兴趣。

0 投票
3 回答
3459 浏览

c#-3.0 - 可查询的vs IEnumerable使用 Lambda,该选择哪个?

我用 Lambda 做越来越多的练习,但我不明白为什么有时.AsQueryable();使用 IQueryable 的示例,有时却省略.AsQueryable();并使用 IEnumerable。

我已经阅读了MSDN,但我没有看到“执行表达式树”比没有优势。

谁能给我解释一下?

0 投票
7 回答
4333 浏览

vb.net - 您如何看待 VB 10 中的多行 lambda

我刚刚在 MSDN Channel 9 上观看了一个视频,可以在这里找到,关于 Visual Basic 10 中的一些新功能。现在我喜欢大多数新功能,其中一些期待已久(自动属性和集合初始化器) ,引起我注意的是 C# 中的多行 lambda。

在视频中,他使用了一个这样的例子:

现在我喜欢 VB 的冗长,但我只是有点担心编写 sub...end sub inline 可能会有点混乱,当你只需要使用某些东西时,我可以看到在编写 C# 时内联的一些优点像 c => {....} 你可以删掉很多代码。

您在 VB 中对多行 lambda 的了解是什么?

你会发现它们有用吗?在哪里?

0 投票
3 回答
134 浏览

lambda - 我在这个方案评估中做错了什么?

评估:

这就是我所做的:

  • 评估((((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3) 4) 5)

    • 评估5 -> 5
  • 评估(((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3) 4)

    • 评估4 -> 4
  • 评估((lambda (x) (lambda (y) (lambda (x) (+ x y)))) 3)

    • 评估3 -> 3
  • (lambda (x) (lambda (y) (lambda (x) (+ x y))))->(lambda (x) (lambda (y) (lambda (x) (+ x y))))

  • 适用(lambda (x) (lambda (y) (lambda (x) (+ x y))))3

    • 替代3->x(lambda (y) (lambda (x) (+ x y))

    • (lambda (y) (lambda (x) (+ 3 y))

    • 评估(lambda (y) (lambda (x) (+ 3 y)) -> (lambda (y) (lambda (x) (+ 3 y))

    • apply (lambda (y) (lambda (x) (+ 3 y))4

    • 4 -> y(lambda (y) (lambda (x) (+ 3 y))

    • (lambda (y) (+ 3 4))

    • 评估(lambda (y) (+ 3 4)) -> (lambda (y) (7))

      • 替代5->?

然后我被卡住了。

0 投票
5 回答
4711 浏览

c# - C# 动作 lambda 限制

为什么这个 lambda 表达式不能编译?

猜想很好,但我非常感谢对 C# 语言规范或其他文档的引用。

是的,我知道以下内容是有效的并且可以编译:

这个博客文章中描述了我会使用这样的东西的上下文。

0 投票
3 回答
1107 浏览

c++ - 接近 STL 算法、lambda、局部类和其他方法

使用 STL 似乎需要的一件事是指定本地函数的方法。我通常提供的许多函数无法使用 STL 函数对象创建工具(例如 bind)创建,我必须手动滚动我的函数对象。

由于 C++ 标准禁止将本地类型用作模板实例化中的参数,因此我能够使用的最好方法是创建一个小型库,(仅显示相关部分)

这在我看来一直很笨拙。我想 ISO 委员会的人也这么认为,并在 C++ 中添加了一个 lambda。

与此同时,编译器是如何解决这个问题的?(尤其是 Windows 编译器。)

一个可能会澄清一点的更正。变更日志:11 月 2 日被替换以澄清由于 C++ 标准禁止将本地类作为函数对象

0 投票
4 回答
5517 浏览

c# - 如何使用条件三元运算符在 lambda 之间有条件地分配 Func<>?

通常,使用条件运算符时,语法如下:

没有什么花哨的,很直截了当。

现在,让我们尝试在将 Lambda 分配给 Func 类型时使用它。让我解释:

那是相同的语法,应该可以吗?对?出于某种原因,没有。编译器给出了这个很好的神秘信息:

错误 1 ​​无法确定条件表达式的类型,因为 'lambda 表达式' 和 'lambda 表达式' 之间没有隐式转换

然后我继续并更改了语法,这样它确实起作用了:

我只是好奇为什么它不能以第一种方式工作?

(旁注:我最终不需要此代码,因为我发现在将 int 值与 null 进行比较时,您只需使用 object.Equals)

0 投票
2 回答
1614 浏览

c# - C# 3.0 Func/OrderBy 类型推断

我今天在 OrderBy 遇到的奇怪情况:

然后:

这很好,但我打算创建一个方法,因为它可能在 orderBy 以外的其他地方可用。

现在,当我尝试将其插入 OrderBy 时:

如果我使用 Func,它就不能像它那样推断类型。在我看来,它们应该是相同的,因为方法本身就像 Func 一样是“强类型”的。

旁注:我意识到我可以做到这一点: