1. 程式人生 > 實用技巧 >常用的函式式介面Consumer介面

常用的函式式介面Consumer介面

package com.chunzhi.Test05Consumer;

import java.util.function.Consumer;

/*
    java.util.function.Consumer<T>介面正好與Supplier介面相反
        它不是生產一個數據,而是消費一個數據,其資料型別由泛型決定
    Consumer介面中包含抽象方法void accept(T t),意為消費一個指定泛型的資料。

    Consumer介面是一個消費型介面,泛型指定什麼型別,就可以使用accept方法消費什麼型別的資料
    至於具體怎麼消費(使用),需要自定義
 
*/ public class Test01Consumer { /* 定義一個方法 方法的引數傳遞一個字串的姓名 方法的引數傳遞Consumer介面,泛型使用String 可以使用Consumer介面,消費字串的姓名 */ public static void method(String name, Consumer<String> con) { con.accept(name); } public static void main(String[] args) {
// 呼叫method方法,傳遞字串姓名,方法的另一個引數是Consumer介面,是一個函式式介面,所以可以傳遞Lambda表示式 method("八級大狂風", (String name) -> { // 對傳遞的字串進行消費 // 消費方式:直接輸出字串 System.out.println(name); // 消費方式:把字串反轉輸出 String reName = new StringBuffer(name).reverse().toString(); System.out.println(reName); }); } }