gpt4 book ai didi

c# - 如何翻译此 C# 示例中的 Lambda 运算符函数?

转载 作者:太空宇宙 更新时间:2023-11-03 18:02:02 24 4
gpt4 key购买 nike

我试图理解这段代码:

List<string> selectedValues = CheckBoxList1.Items.Cast<ListItem>()
.Where(li => li.Selected)
.Select(li => li.Value)
.ToList();

根据我的研究,我理解了 Lambda 函数的意义(提供一个可用作内联参数的函数),但为什么在这种情况下使用它?

仅将项目添加到 li.Selected 的 selectedValues,并且仅将这些选定项目的值添加到名为 selectedValues 的列表中?如果是这种情况,是否没有其他更易读的方式来做到这一点?这还能怎么写?我的理解正确吗?

谢谢你的时间。

最佳答案

有问题的代码块执行以下操作:

  • 获取 CheckBox1.Items 中的所有项目
  • 将它们转换为 ListItem 的类型
  • 仅筛选选定的项目
  • 选择那些现在已过滤的项目的值。
  • 将结果转换到列表中。

  • 您还可以编写如下代码:
    List<string> selectedValues = new List<string>();
    foreach (object item in CheckBoxList1.Items) {
    var listItem = (ListItem)item;
    if (listItem.Selected) {
    selectedValues.Add(listItem.Value);
    }
    }

    关于c# - 如何翻译此 C# 示例中的 Lambda 运算符函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54442181/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com