Java 関数型インターフェースのサンプル(Consumer)

Javaの関数型インターフェースのConsumerのサンプルです。

目次

説明 Consumerインターフェース
サンプル クラスの場合
  匿名クラスの場合

Consumerインターフェース

インターフェース public interface Consumer<T>
メソッド void accept(T t)

クラスの場合

クラスのサンプルです。

package test1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;

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

		List<String> c1 = new ArrayList<>(Arrays.asList("赤","黄","青"));
		
		GetMessage1 g1 = new GetMessage1();
		g1.accept(c1); //赤です 黄です 青です
	}
}
 class GetMessage1 implements Consumer<List<String>> {
	@Override
    public  void accept( List<String> c1) {
		for (String a:c1) {
			System.out.println(a+"です");	
		}
    }
}

5行目は、java.util.functionパッケージのConsumerインターフェースをimportしています。
16行目は、Consumerインターフェースを実装しています。
13行目は、acceptメソッドです。引数を渡しますが戻り値はありません。
リストの値分文字列が出力されます。

匿名クラスの場合

匿名クラスのサンプルです。

package test1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.function.Consumer;

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

		List<String> c1 = new ArrayList<>(Arrays.asList("赤","黄","青"));
		
		new Consumer<List<String>>() {
			@Override
		    public  void accept(List<String> c1) {
				for (String a:c1) {
					System.out.println(a+"です");	
				}
		    }
		}.accept(c1); //赤です 黄です 青です
	}
}

5行目は、java.util.functionパッケージのConsumerインターフェースをimportしています。
12行目は、匿名クラスです。クラス名はありません。
19行目は、acceptメソッドです。引数を渡しますが戻り値はありません。
リストの値分文字列が出力されます。

関連の記事

Java ラムダ式のサンプル

△上に戻る