Java ラムダ式で関数型インターフェースを使用

ラムダ式で関数型インターフェースを使用するサンプルです。

目次

サンプル 引数あり+戻り値あり(Functionインターフェース)
  引数あり+戻り値なし(Consumerインターフェース)
  引数あり+booleanの戻り値あり(Predicateインターフェース)
  引数なし+戻り値あり(Supplierインターフェース)

ラムダ式については以下を参照願います。
Java ラムダ式のサンプル

引数あり+戻り値あり(Functionインターフェース)

Function<T,R>
R apply(T t)

Functionインターフェース+ラムダ式のサンプルです。

package test1;

import java.util.function.Function;

public class Test1 {
	public static void main(String[] args) {
		
		Function <Integer,String> c1 = a -> a + "です";
		
		String b = c1.apply(2);
		System.out.println(b); //2です
	}
}

3行目は、java.util.functionパッケージのFunctionインターフェースをimportしています。
8行目は、Functionインターフェースを使用したラムダ式です。
10行目は、applyメソッドで引数があり戻り値もあります。

 

引数あり+戻り値なし(Consumerインターフェース)

Consumer<T>
void accept(T t)

Consumerインターフェース+ラムダ式のサンプルです。

package test1;

import java.util.function.Consumer;

public class Test1 {
	public static void main(String[] args) {
		
		Consumer <Integer> c1 = a -> System.out.println(a + "です");
		
		c1.accept(3); //3です
	}
}

3行目は、java.util.functionパッケージのConsumerインターフェースをimportしています。
8行目は、Consumerインターフェースを使用したラムダ式です。
10行目は、acceptメソッドで引数があり戻り値はありません。

 

引数あり+booleanの戻り値あり(Predicateインターフェース)

Predicate<T>
boolean test(T t)

Predicateインターフェース+ラムダ式のサンプルです。

package test1;

import java.util.function.Predicate;

public class Test1 {
	public static void main(String[] args) {
		
		Predicate <String> c1 = a -> a.isEmpty();
		
		boolean b = c1.test("3");
		System.out.println(b); //false
		
		boolean c = c1.test("");
		System.out.println(c); //true
	}
}

3行目は、java.util.functionパッケージのPredicateインターフェースをimportしています。
8行目は、Predicateインターフェースを使用したラムダ式です。
10,13行目は、testメソッドで引数があり、戻り値もあります。戻り値はbooleanです。

 

引数なし+戻り値あり(Supplierインターフェース)

Supplier<T>
T get()

Supplierインターフェース+ラムダ式のサンプルです。

package test1;

import java.util.function.Supplier;

public class Test1 {
	public static void main(String[] args) {
		
		Supplier <String> c1 = () -> "青です";
		
		String b = c1.get();
		System.out.println(b); //青です
	}
}

3行目は、java.util.functionパッケージのSupplierインターフェースをimportしています。
8行目は、Supplierインターフェースを使用したラムダ式です。
10行目は、getメソッドで引数はなし、戻り値はあります。

関連の記事

Java ラムダ式のサンプル
Java 匿名クラスのサンプル
Java 標準アノテーションのサンプル

△上に戻る