lambda表达式练习 1.判断一个数是否是偶数 2.判断一个数是否是质数 3.给定n,计算1到n的累加和
时间: 2024-09-26 13:13:33 浏览: 18
1. 使用lambda表达式来判断一个数是否是偶数,可以这样表示:
```java
isEven = lambda num: num % 2 == 0
```
然后你可以像这样检查一个数是否为偶数:
```java
print(isEven(4)) # 输出: True
print(isEven(5)) # 输出: False
```
2. 判断一个数是否是质数也可以用lambda,但需要注意的是lambda表达式通常用于简单的操作。下面是一个较复杂的例子,使用了普通的函数定义:
```java
def isPrime(num):
return lambda x: all(x % i != 0 for i in range(2, int(num ** 0.5) + 1))
isPrimeChecker = isPrime(17)
print(isPrimeChecker(19)) # 输出: True
print(isPrimeChecker(16)) # 输出: False
```
3. 计算从1到n的累加和,可以用lambda结合`reduce`函数来实现,如果在Python中:
```java
from functools import reduce
sum_n = lambda acc, n: acc + n
calculateSum = lambda n: reduce(sum_n, range(1, n + 1), 0)
print(calculateSum(5)) # 输出: 15
```
以上是lambda表达式的简单应用实例。
相关问题
stream、lambda表达式练习.doc
stream和lambda表达式是Java 8中引入的新特性,用于简化集合操作的代码。stream是一个顺序流或并行流,可以对集合中的元素进行各种操作,如过滤、转换、排序等,而不需要显式使用迭代器或循环。
lambda表达式是一种匿名函数,可以像一般的方法一样传递给其他方法或函数接口中使用。它可以简化代码的书写,并且使代码更易读和维护。通过lambda表达式,可以更加灵活地编写函数式接口的实现。
在练习文件"stream、lambda表达式练习.doc"中,我可以想到以下可能的练习内容:
1. 使用stream和lambda表达式对一个整数集合进行过滤,只保留偶数。
2. 使用stream和lambda表达式对一个字符串集合进行转换,将每个字符串转换为大写。
3. 使用stream和lambda表达式对一个学生对象集合进行排序,按照姓名字母顺序排序。
4. 使用stream和lambda表达式计算一个整数集合中所有元素的平均值。
5. 使用stream和lambda表达式对一个字符串集合进行去重,保留唯一的字符串。
这些练习可以帮助我们熟悉stream和lambda表达式的使用,并且体会到它们的便利之处。在实际的开发工作中,stream和lambda表达式能够大大简化我们的代码,并提升我们的开发效率。同时,它们也是函数式编程的一种体现,使得我们可以更加灵活地处理集合中的元素,提高代码的可读性和可维护性。
lambda表达式判断一个月份是什么季节 java
lambda表达式可以用来判断一个月份属于哪个季节。以下是Java代码示例:
```
public interface SeasonChecker {
public String checkSeason(int month);
}
public class LambdaExample {
public static void main(String[] args) {
SeasonChecker seasonChecker = (month) -> {
if (month == 12 || month == 1 || month == 2) {
return "冬季";
} else if (month >= 3 && month <= 5) {
return "春季";
} else if (month >= 6 && month <= 8) {
return "夏季";
} else if (month >= 9 && month <= 11) {
return "秋季";
} else {
return "输入错误";
}
};
System.out.println(seasonChecker.checkSeason(3)); // 输出:春季
}
}
```
这段代码中,我们定义了一个SeasonChecker接口来检查一个月份所属的季节。然后使用lambda表达式实现了该接口,通过传入月份来判断季节。最后在main函数中测试了一下结果。