0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

java.util.functionの引数・返り値まとめ

Posted at

java.util.functionとは

色々な引数・返り値を持つ関数のinterfaceを提供する標準パッケージです。

まとめ表

主要なインターフェース

インターフェース名 引数 返り値 説明
Runnable なし なし java.lang 比較対象
Supplier<T> なし T 変数のgetterとして使える
Consumer<T> T なし 変数のsetterとして使える
Function<T, R> T R 本物の「関数」
Predicate<T> T boolean Tから予測する

SupplierとConsumerは混同しやすいので注意!
Supplier→Supply→供給
Consumer→Consume→消費
と覚えておくとよさそう

Suppiler系列

インターフェース名 引数 返り値
BooleanSupplier なし boolean
DoubleSupplier なし double
IntSupplier なし int
LongSupplier なし long

Consumer系列

インターフェース名 引数 返り値
BiConsumer<T, U> T, U なし
DoubleConsumer double なし
IntConsumer int なし
LongConsumer long なし
ObjDoubleConsumer<T> T, double なし
ObjIntConsumer<T> T, int なし
ObjLongConsumer<T> T, long なし

ObjConsumerの使い道がよくわからない

Function系列

インターフェース名 引数 返り値
BiFunction<T, U, R> T, U R
DoubleFunction<R> double R
DoubleToIntFunction double int
DoubleToLongFunction double long
IntFunction<R> int R
IntToDoubleFunction int double
IntToLongFunction int long
LongFunction<R> long R
LongToIntFunction long int
LongToDoubleFunction long double
ToDoubleBiFunction<T, U> T, U double
ToIntBiFunction<T, U> T, U int
ToLongBiFunction<T, U> T, U long
ToDoubleFunction<T> T double
ToIntFunction<T> T int
ToLongFunction<T> T long

Function多すぎ

Predicate系列

インターフェース名 引数 返り値
BiPredicate<T, U> T, U boolean
DoublePredicate double boolean
IntPredicate int boolean
LongPredicate long boolean

UnaryOperator系列

Functionの子でFunction<T,T>と同じ

インターフェース名 引数 返り値
UranyOperator<T> T T
DoubleUranyOperator<T> double double
IntUranOperator<T> int int
LongUranyOperator<T> long long

BinaryOperator系列

BiFunctionの子でBiFunction<T,T,T>と同じ

インターフェース名 引数 返り値
BinaryOperator<T> T, T T
DoubleBinaryOperator<T> double, double double
IntBinaryOperator<T> int, int int
LongBinaryOperator<T> long, long long

まとめ

java.util.functionにはSupplier、Consumerなどの他ラッパー型(int->Integer)などを用いないためのインターフェースが沢山あります。
ぜひ使ってみてください。正直上4つしか使わない

とても疲れたのでいいねしてくださると幸いです。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?