1. 程式人生 > 其它 >java-函數語言程式設計

java-函數語言程式設計

技術標籤:java

函數語言程式設計是把函式作為基本運算單元,函式可以作為變數可以接受函式。我們經常把函式式的編碼風格成為Lambda表示式

public class Main {
    public static void main(String[] args) {
        String[] array = new String[] { "Apple", "Orange", "Banana", "Lemon" };
        Arrays.sort(array, (s1, s2) -
> { return s1.compareTo(s2); }); System.out.println(String.join(", ", array)); } }

實際上,除了Lambda表示式,我們還可以直接傳入方法引用。例如:

public class Main {
    public static void main(String[] args) {
        String[] array = new String[] { "Apple", "Orange"
, "Banana", "Lemon" }; Arrays.sort(array, Main::cmp); System.out.println(String.join(", ", array)); } static int cmp(String s1, String s2) { return s1.compareTo(s2); } }

使用Stream
Stream API提供了一套新的流式處理的抽象序列;
Stream API支援函數語言程式設計和鏈式操作;

Stream可以表示無限序列,並且大多數情況下是惰性求值的。