lambda表达式案例
时间: 2023-07-07 19:44:37 浏览: 37
好的,以下是一个简单的lambda表达式的例子:
```
# lambda表达式用于计算两个数的和
sum = lambda x, y: x + y
# 调用lambda表达式
result = sum(4, 6)
# 输出结果
print(result) # 输出结果为10
```
在这个例子中,我们定义了一个lambda表达式来计算两个数的和。该表达式接收两个参数x和y,然后返回它们的和。我们将这个lambda表达式赋值给一个变量sum,然后调用它并将结果存储在另一个变量result中。最后,我们输出结果10。
相关问题
.net中Lambda表达式的完整案例
以下是一个使用Lambda表达式的完整示例,它演示了如何使用Lambda表达式来筛选和排序字符串列表:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main(string[] args)
{
List<string> names = new List<string> { "Alice", "Bob", "Charlie", "David", "Eve", "Frank" };
// 使用Lambda表达式筛选以字母"C"开头的名字
var filteredNames = names.Where(n => n.StartsWith("C"));
// 打印筛选结果
Console.WriteLine("Names that start with C:");
foreach (var name in filteredNames)
{
Console.WriteLine(name);
}
// 使用Lambda表达式对名字列表进行排序
var sortedNames = names.OrderBy(n => n);
// 打印排序结果
Console.WriteLine("\nNames sorted in alphabetical order:");
foreach (var name in sortedNames)
{
Console.WriteLine(name);
}
// 使用Lambda表达式组合筛选和排序
var filteredAndSortedNames = names
.Where(n => n.Length == 4)
.OrderByDescending(n => n);
// 打印组合结果
Console.WriteLine("\nNames with length 4, sorted in descending order:");
foreach (var name in filteredAndSortedNames)
{
Console.WriteLine(name);
}
Console.ReadLine();
}
}
```
此代码示例演示了如何使用Lambda表达式来筛选以字母"C"开头的名字,按字母顺序排序名字列表以及组合筛选和排序。请注意,Lambda表达式使用`=>`符号来分隔参数和表达式,并且可以使用箭头函数体的简写形式来返回表达式的结果。
1.应用案例: 集合存储字符串元素,例如: "ldh","guodegang","lyf","gyy","liuyifei" 1.找出集合中以l开头的元素; 2. 找出集合中字符串长度大于5的元素 方式1:使用常规的集合操作求出----循环遍历后判定 方式2:使用lambda表达式来操作----提示:断言型接口
对于第一个问题,可以使用lambda表达式来筛选出以l开头的元素:
```
Set<String> set = new HashSet<>(Arrays.asList("ldh", "guodegang", "lyf", "gyy", "liuyifei"));
set.stream().filter(str -> str.startsWith("l")).forEach(System.out::println);
```
对于第二个问题,同样可以使用lambda表达式,筛选出字符串长度大于5的元素:
```
Set<String> set = new HashSet<>(Arrays.asList("ldh", "guodegang", "lyf", "gyy", "liuyifei"));
set.stream().filter(str -> str.length() > 5).forEach(System.out::println);
```
值得注意的是,这里使用的是Stream API来操作集合,这样的好处是代码更加简洁、易读,同时还可以提高运行效率。