Computer >> Máy Tính >  >> Lập trình >> Java

Sự khác biệt giữa Hàm và Vị từ trong Java 8

Cả hai giao diện chức năng Function và Predicate đều được giới thiệu trong Java 8 để triển khai lập trình chức năng trong Java.

Giao diện hàm được sử dụng để thực hiện chuyển đổi, nó có thể chấp nhận một đối số và tạo ra một kết quả. Mặt khác, Predicate cũng chỉ có thể chấp nhận một đối số nhưng nó chỉ có thể trả về giá trị boolean. Nó được sử dụng để kiểm tra điều kiện.

Sr. Không. Phím Chức năng Vị ngữ
1
Cơ bản
Nó có thể nhận 2 tham số kiểu Đầu tiên đại diện cho kiểu đối số kiểu đầu vào và kiểu thứ hai đại diện cho kiểu trả về.
Nó có thể nhận một tham số kiểu đại diện cho kiểu đầu vào hoặc kiểu đối số.
2
Loại Trả lại
Nó có thể trả về bất kỳ loại giá trị nào.
Nó chỉ có thể trả về giá trị boolean
3
Phương pháp
Nó có phương thức trừu tượng apply ().
Nó có phương thức trừu tượng test ().
4.
Trường hợp Sử dụng
Nó có thể được sử dụng để thực hiện kiểm tra có điều kiện
Nó có thể được sử dụng để chuyển đổi và cho các giá trị trả về.

Ví dụ về Vị từ

public class Main {
   public static void main(String args[]) {
      List<Integer> numList = new ArrayList<>();
      numList.add(5);
      numList.add(10);
      Predicate<Integer> pred = i -> i > 5;
      numList.stream().filter(pred).forEach(i -> System.out.println(i));
   }
}

Ví dụ về Hàm

public class Main {
   public static void main(String args[]) {
      List<Integer> numList = new ArrayList<>();
      numList.add(78);
      numList.add(10);
      Function<Integer, Integer> fun = i -> i / 2;
      numList.stream().map(fun).forEach(System.out::println);    
   }
}