在OrderBy中lambda表达式的意义是什么?

康拉德·维特尔斯滕

我有一个字符串列表,我想订购它们。

IEnumerable<String> strings = ...;
strings = strings.OrderBy(a => a);

我没有得到的是lambda表达式a => a的要点首先,我认为我可以像这样一样提取属性和顺序。

IEnumerable<Something> somethings = ...;
IEnumerable<String> strings = somethings.OrderBy(a => a.StringProperty);

但这不能编译。所以我必须这样走。

IEnumerable<Something> somethings = ...;
IEnumerable<String> strings = somethings.Select(a
  => a.StringProperty).OrderBy(a => a);

那么,为什么我必须在OrderBy命令中使用lambda表达式

马克·格雷维尔(Marc Gravell)

lambda表示“您要订购的商品”。

如果您带了一组人,并在他们的生日之前订购了他们,那么您仍然有一组人,而不是一组生日;IE

IEnumerable<Person> people = ...;
IEnumerable<Person> sorted = people.OrderBy(a => a.DateOfBirth);

那么同样,订购了一套Something由sStringProperty还导致了一组SomethingS:

IEnumerable<Something> somethings = ...;
IEnumerable<Something> sorted = somethings.OrderBy(a => a.StringProperty);

在某些(极少数)情况下,您实际上的意思是“并根据事物本身对其进行排序”。这通常仅适用于IEnumerable<string>IEnumerable<int>-之类的事物,因此带来的不便.OrderBy(x => x)是微不足道的。如果让您感到困扰,您总是可以编写扩展方法来隐藏此细节。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

“ lambda表达式”的优点是什么?

来自分类Dev

使用lambda表达式在Scheme中定义函数的原因是什么?

来自分类Dev

lambda表达式中变量名的约定是什么?

来自分类Dev

在lambda表达式中引用的“安全”解除局部变量的规则是什么?

来自分类Dev

spark映射内的lambda表达式中的*是什么意思?

来自分类Dev

C++:在 lambda 表达式中捕获的目的是什么?

来自分类Dev

livedata observable Kotlin 的 lambda 表达式中的“让”是什么意思

来自分类Dev

从函数返回lambda表达式的返回值有什么意义?

来自分类Dev

lambda的意义是什么?

来自分类Dev

此正则表达式中\\ +的含义是什么?

来自分类Dev

AngularJS表达式中的$ locals是什么?

来自分类Dev

[^。] *在正则表达式中是什么意思?

来自分类Dev

Ruby正则表达式中的“?-mix”是什么

来自分类Dev

&variable作为表达式在c中的含义是什么

来自分类Dev

在Linq表达式中=>是什么意思

来自分类Dev

AngularJS中的理解表达式是什么?

来自分类Dev

C中的子表达式是什么?

来自分类Dev

ggplot()中偏导数的表达式是什么?

来自分类Dev

SQL表达式中的括号是什么意思?

来自分类Dev

正则表达式中%s +%的含义是什么?

来自分类Dev

catch表达式中的let的目的是什么?

来自分类Dev

在Linq表达式中=>是什么意思

来自分类Dev

“ \?”在正则表达式中是什么意思?

来自分类Dev

此表达式(({{} + [])[+ []])在JavaScript中是什么意思?

来自分类Dev

Java中此表达式的含义是什么?

来自分类Dev

\,^ @在sed表达式中是什么意思

来自分类Dev

js中的这个表达式是什么

来自分类Dev

变量:表达式在 Python 中是什么意思?

来自分类Dev

表达式 std::enable_if 中的 type* 是什么

Related 相关文章

  1. 1

    “ lambda表达式”的优点是什么?

  2. 2

    使用lambda表达式在Scheme中定义函数的原因是什么?

  3. 3

    lambda表达式中变量名的约定是什么?

  4. 4

    在lambda表达式中引用的“安全”解除局部变量的规则是什么?

  5. 5

    spark映射内的lambda表达式中的*是什么意思?

  6. 6

    C++:在 lambda 表达式中捕获的目的是什么?

  7. 7

    livedata observable Kotlin 的 lambda 表达式中的“让”是什么意思

  8. 8

    从函数返回lambda表达式的返回值有什么意义?

  9. 9

    lambda的意义是什么?

  10. 10

    此正则表达式中\\ +的含义是什么?

  11. 11

    AngularJS表达式中的$ locals是什么?

  12. 12

    [^。] *在正则表达式中是什么意思?

  13. 13

    Ruby正则表达式中的“?-mix”是什么

  14. 14

    &variable作为表达式在c中的含义是什么

  15. 15

    在Linq表达式中=>是什么意思

  16. 16

    AngularJS中的理解表达式是什么?

  17. 17

    C中的子表达式是什么?

  18. 18

    ggplot()中偏导数的表达式是什么?

  19. 19

    SQL表达式中的括号是什么意思?

  20. 20

    正则表达式中%s +%的含义是什么?

  21. 21

    catch表达式中的let的目的是什么?

  22. 22

    在Linq表达式中=>是什么意思

  23. 23

    “ \?”在正则表达式中是什么意思?

  24. 24

    此表达式(({{} + [])[+ []])在JavaScript中是什么意思?

  25. 25

    Java中此表达式的含义是什么?

  26. 26

    \,^ @在sed表达式中是什么意思

  27. 27

    js中的这个表达式是什么

  28. 28

    变量:表达式在 Python 中是什么意思?

  29. 29

    表达式 std::enable_if 中的 type* 是什么

热门标签

归档