#はじめに
Javaではあらかじめいくつかの関数型インターフェイスが用意されてますが、皆さんはいくつご存知でしょうか。今回は代表的な関数型インターフェースのConsumerインターフェースについて解説していきます。
#Consumerインターフェイスとは?
英語を勉強したことがある人なら「Consumer」という単語は何度か聞いたことあると思います。
日本語に訳すと「消費者」という意味になります。
名前の通り、Consumerインタフェイスは引数を受け取ってその引数を使った処理を実行するメソッドを定めます。
その定められたメソッドが__accept()__です。
関数型インターフェイスとはメソッドを一つしか持たないインタフェースのことを言います。
##いつ使うの?
引数を受け取ってその引数を使った処理を実行する時に使います。
具体的には引数で受け取ったものをコンソールに出力することやインスタンスの初期化に必要な値を受け取ったりします。
##どうやって使うの?
関数型インターフェイスはラムダ式でよく利用します。
ラムダ式がまだわからないっていう方は下記の記事を参考にしてください。
https://qiita.com/110shun/items/07f96b571532c18d97c0
下記のサンプルコードはConsumer型変数引数コンソールへ出力するラムダ式を代入します。
import java.util.function.Consumer;
public class Main {
public static void main(String[] args) {
//Consumer型変数引数コンソールへ出力するラムダ式を代入します。
Consumer<String> consumer = (x)-> System.out.println(x);
consumer.accept("最後まで読んで頂きありがとうございます。");
}
}
結果
最後まで読んで頂きありがとうございます。
#まとめ
・Consumerインタフェイスは引数を受け取ってその引数を使った処理を実行するメソッドを定めます
・acceptメソッドを持っています。
##参考文献
・Java 関数型インターフェースのサンプル(Supplier)