java 函数式接口是仅包含一个抽象方法的接口,允许将其作为参数或值传递。supplier 函数式接口是一种不接受参数并返回特定类型的对象的函数式接口,其用法如下:定义一个 supplier 函数式接口来返回一个值。调用 get() 方法获取值。实战案例:可以使用 supplier 函数式接口生成随机的学生名称和成绩值对。
Java 函数式接口与 Supplier 函数式接口
何为函数式接口
函数式接口是一种仅包含一个抽象方法的接口,它允许将其用作参数或值传递。
立即学习“Java免费学习笔记(深入)”;
Supplier 函数式接口
Supplier 函数式接口是 Java 标准库中提供的函数式接口,它表示不接受任何参数并返回特定类型的对象的函数。
用法:
// 定义一个 Supplier 函数式接口来返回一个字符串 Supplier<String> supplier = () -> "Hello, world!"; // 调用 get() 方法获取值 String message = supplier.get();
实战案例:
假设有一个列表包含学生的成绩,需要创建一个函数式接口来生成每个学生的名称和成绩的随机值对。
import java.util.List; import java.util.Random; import java.util.function.Supplier; class Student { private String name; private int score; public Student(String name, int score) { this.name = name; this.score = score; } public String getName() { return name; } public int getScore() { return score; } } public class SupplierDemo { public static void main(String[] args) { List<String> names = List.of("John", "Alice", "Bob"); Random random = new Random(); // 定义 Supplier 函数式接口来生成一个随机学生实例 Supplier<Student> studentSupplier = () -> new Student(names.get(random.nextInt(names.size())), random.nextInt(100)); // 创建 10 个随机学生并打印他们的名称和成绩 for (int i = 0; i < 10; i++) { Student student = studentSupplier.get(); System.out.println(student.getName() + ": " + student.getScore()); } } }
以上就是Java函数式接口与Supplier函数式接口的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系 yyfuon@163.com