登录
首页 >  文章 >  java教程

Java 中高阶函数的常见示例

时间:2024-09-18 22:10:44 468浏览 收藏

最近发现不少小伙伴都对文章很感兴趣,所以今天继续给大家介绍文章相关的知识,本文《Java 中高阶函数的常见示例》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激的措辞~

Java中的高阶函数可以接收或返回函数,以下是常见示例:接收函数作为参数:forEach、map、filter返回函数:Comparator.comparing、Predicate、Runnable

Java 中高阶函数的常见示例

Java 中高阶函数的常见示例

高阶函数是一种可以接收函数作为参数或返回函数的函数。在 Java 中,函数是一等公民,这意味着它们可以像其他对象一样被传递。

以下是 Java 中高阶函数的一些常见示例:

接收函数作为参数

  • forEach:遍历集合并对每个元素执行给定的函数。
  • map:根据给定的函数将集合中的每个元素转换为新的集合。
  • filter:根据给定的函数过滤集合,仅保留满足条件的元素。

返回函数

  • Comparator.comparing:返回一个比较器,该比较器可以比较给定键上的对象。
  • Predicate:返回一个布尔函数,可以测试给定输入是否满足给定条件。
  • Runnable:返回一个没有参数的、表示要执行的代码块的函数。

实战案例

让我们考虑一个计算集合中元素平方和的示例。我们可以使用 mapsum 高阶函数来实现此目的:

import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

        // 映射每个元素的平方
        List<Integer> squares = numbers.stream()
            .map(n -> n * n)
            .collect(Collectors.toList());

        // 求平方和
        int sum = squares.stream()
            .reduce(0, Integer::sum);

        System.out.println("平方和:" + sum);
    }
}

输出:

平方和:55

以上就是《Java 中高阶函数的常见示例》的详细内容,更多关于java,高阶函数的资料请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>