Java 菜鳥教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊(duì)列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java 程序?qū)ambda表達(dá)式作為方法參數(shù)傳遞

Java 實(shí)例大全

在此示例中,我們將學(xué)習(xí)將lambda表達(dá)式作為Java中的方法參數(shù)傳遞。

要理解此示例,您應(yīng)該了解以下Java編程主題:

示例1:將lambda表達(dá)式定義為方法參數(shù)

import java.util.ArrayList;

class Main {
    public static void main(String[] args) {
        //創(chuàng)建一個(gè)ArrayList
        ArrayList<String> languages = new ArrayList<>();

        //向ArrayList添加元素
        languages.add("java");
        languages.add("swift");
        languages.add("python");
        System.out.println("ArrayList: " + languages);

        //將lambda表達(dá)式作為參數(shù)傳遞給replaceAll()方法
        languages.replaceAll(e -> e.toUpperCase());
        System.out.println("更新后的 ArrayList: " + languages);
    }
}

輸出結(jié)果

ArrayList: [java, swift, python]
更新后的 ArrayList: [JAVA, SWIFT, PYTHON]

在上面的示例中,我們創(chuàng)建了一個(gè)名為languages的數(shù)組列表。注意這一行,

languages.replaceAll(e -> e.toUpperCase());

這里,e -> e.toUpperCase()是lambda表達(dá)式。它接受arraylist的所有元素,并將它們轉(zhuǎn)換為大寫。

示例2:將多行l(wèi)ambda主體作為函數(shù)參數(shù)傳遞

import java.util.ArrayList;
import java.util.Arrays;

class Main {
  public static void main(String[] args) {

    //創(chuàng)建一個(gè)ArrayList
    ArrayList<String> languages = new ArrayList<>(Arrays.asList("java", "python"));
    System.out.println("ArrayList: " + languages);

    //調(diào)用forEach()方法
    //將lambda作為參數(shù)傳遞給forEach()
    //反轉(zhuǎn)ArrayList的每個(gè)元素
    System.out.print("反轉(zhuǎn)后的 ArrayList: ");
    languages.forEach((e) -> {

      //Lambda表達(dá)式主體
      String result = "";
      for (int i = e.length()-1; i >= 0 ; i--)
      result += e.charAt(i);
      System.out.print(result + ", ");
    });

  }
}

輸出結(jié)果

ArrayList: [java, python]
反轉(zhuǎn)后的 ArrayList: avaj, nohtyp,

在上面的示例中,我們創(chuàng)建了一個(gè)名為 languages 的arraylist。注意這一行,

    languages.forEach((e) -> {

      //Lambda 表達(dá)式體
      String result = "";
      for (int i = e.length()-1; i >= 0 ; i--)
      result += e.charAt(i);
      System.out.print(result + ", ");
    });

在這里,我們將lambda表達(dá)式作為參數(shù)傳遞給ArrayList forEach()方法。lambda表達(dá)式將反轉(zhuǎn)arraylist的每個(gè)元素。

Java 實(shí)例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清