0
0

(java silver) 関数型インターフェース

Posted at

JavaSilverでメモしたところ備忘録として残しておこうと思います。

  • 関数型インターフェース学びたてはってなんだよと思いながら勉強してました。ラムダ式を少し学んだあとに読み返すと理解が深まりました!

関数型インターフェース

  • 定義されている抽象メソッドが一つだけ、staticメソッドやdefaultメソッドが定義されていても問題なし

Supplierインターフェース

  • getメソッドが定義されている、引数なしで戻り値にジェネリクスで指定したデータ型の値を返すメソッド

Supplier<String> Sup = () -> "Hello!!";
//getメソッドのオーバーライド

System.out.println(sup.get());
//getメソッドの呼び出し
//Hello!!と出力される

Consummerインターフェース(消費者)

  • acceptメソッドが定義されている、引数にジェネリクスで指定したデータ型の値をとり戻り値なし

Consummer<String> con = (s) -> System.out.println("Hello" + s + "!");
//acceptメソッドのオーバーライド

con.accept(" Tanaka");
//acceptの呼び出し
//Hello Tanaka!と出力される

Predicateインターフェース(判断者)

  • 引数の値を受け取りTrueもしくはFalseの値を返す
Predicate<String> pre = testval -> testval.isEmpty();//文字列は空文字か?

System.out.println(pre.test(2));
//空文字ではないのでfalseが出力される

Functionインターフェース

  • 引数で渡した値を演算して返り値として返す

Function<Integer, String> make1 = a -> a + "です";

String b = make1.apply(2);
System.out.println(b);//"2です"と表示される
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0