インタフェース
java.util.function.Functionの使用

Functionを使用しているパッケージ 
パッケージ 説明
java.lang
Javaプログラミング言語の設計にあたり基本的なクラスを提供します。
java.net.http
HTTPクライアントおよびWebSocket API
java.security
セキュリティ・フレームワークのクラスとインタフェースを提供します。
java.util
コレクション・フレームワーク、国際化サポート・クラス、サービス・ローダー、プロパティ、乱数生成、文字列解析とスキャン・クラス、Base64エンコーディングとデコード、ビット配列、およびその他のユーティリティ・クラスが含まれています。
java.util.concurrent
並行プログラミングでよく使用されるユーティリティ・クラスです。
java.util.function
関数型インタフェースは、ラムダ式やメソッド参照のターゲットとなる型を提供します。
java.util.logging
Java™ 2プラットフォームのコア・ロギング機能のクラスとインタフェースを提供します。
java.util.regex
正規表現で指定されたパターンに対して文字シーケンスをマッチングするためのクラス。
java.util.stream
コレクションに対するマップ-リデュース変換など、要素のストリームに対する関数型の操作をサポートするクラスです。
jdk.jshell
Javaプログラミング言語コードの"snippets"をインタラクティブに評価するRead-Eval-Printループ(REPL)などのツールを作成するためのインタフェースを提供します。
  • java.langでのFunctionの使用

    Functionのパラメータを持つjava.langのメソッド
    修飾子と型 メソッド 説明
    ModuleLayer ModuleLayer.defineModules​(Configuration cf, Function<String,​ClassLoader> clf)
    指定されたConfiguration内のモジュールをJava仮想マシンに定義することによって、この層を親として持つ新しいモジュール層を作成します。
    static ModuleLayer.Controller ModuleLayer.defineModules​(Configuration cf, List<ModuleLayer> parentLayers, Function<String,​ClassLoader> clf)
    指定された Configuration内のモジュールをJava仮想マシンに定義することによって、新しいモジュール層を作成します。
    <R> R String.transform​(Function<? super String,​? extends R> f)
    このメソッドは、関数をthis文字列に適用します。
    <T> T StackWalker.walk​(Function<? super Stream<StackWalker.StackFrame>,​? extends T> function)
    指定された関数を、現在のスレッドのStackFrameストリームに適用します。この関数は、このwalkメソッドを呼び出すメソッドです。
  • java.net.httpでのFunctionの使用

    Functionのパラメータを持つjava.net.httpのメソッド
    修飾子と型 メソッド 説明
    void HttpResponse.PushPromiseHandler.applyPushPromise​(HttpRequest initiatingRequest, HttpRequest pushPromiseRequest, Function<HttpResponse.BodyHandler<T>,​CompletableFuture<HttpResponse<T>>> acceptor)
    受信プッシュ・プロミスの通知。
    static <S extends Flow.Subscriber<? super String>,​ T>
    HttpResponse.BodyHandler<T>
    HttpResponse.BodyHandlers.fromLineSubscriber​(S subscriber, Function<? super S,​? extends T> finisher, String lineSeparator)
    BodySubscribers.fromLineSubscriber(subscriber, finisher, charset, lineSeparator)から取得したBodySubscriber<T>を返し、指定されたsubscriberfinisher関数および行セパレータを含むレスポンス本文ハンドラを返します。
    static <S extends Flow.Subscriber<? super String>,​ T>
    HttpResponse.BodySubscriber<T>
    HttpResponse.BodySubscribers.fromLineSubscriber​(S subscriber, Function<? super S,​? extends T> finisher, Charset charset, String lineSeparator)
    指定されたFlow.Subscriberの行ごとにすべてのレスポンス本文を転送する本体サブスクライバを返します。
    static <S extends Flow.Subscriber<? super List<ByteBuffer>>,​ T>
    HttpResponse.BodyHandler<T>
    HttpResponse.BodyHandlers.fromSubscriber​(S subscriber, Function<? super S,​? extends T> finisher)
    指定されたsubscriberおよびfinisher関数を使用して、HttpResponse.BodySubscribers.fromSubscriber(Subscriber, Function)から取得されたBodySubscriber<T>を返すレスポンス本文ハンドラを返します。
    static <S extends Flow.Subscriber<? super List<ByteBuffer>>,​ T>
    HttpResponse.BodySubscriber<T>
    HttpResponse.BodySubscribers.fromSubscriber​(S subscriber, Function<? super S,​? extends T> finisher)
    すべてのレスポンス本文を指定されたFlow.Subscriberに転送する本文サブスクライバを返します。
    static <T,​ U> HttpResponse.BodySubscriber<U> HttpResponse.BodySubscribers.mapping​(HttpResponse.BodySubscriber<T> upstream, Function<? super T,​? extends U> mapper)
    指定されたupstream BodySubscriberの本体オブジェクトに指定された関数を適用した結果がレスポンス本文の値であるBodySubscriberを返します。
    static <T> HttpResponse.PushPromiseHandler<T> HttpResponse.PushPromiseHandler.of​(Function<HttpRequest,​HttpResponse.BodyHandler<T>> pushPromiseHandler, ConcurrentMap<HttpRequest,​CompletableFuture<HttpResponse<T>>> pushPromisesMap)
    指定されたマップに、プッシュ・プロミスおよびそのレスポンスを累積する、プッシュ・プロミス・ハンドラを返します。
  • java.securityでのFunctionの使用

    Function型のパラメータを持つjava.securityのメソッド 
    修飾子と型 メソッド 説明
    Object Provider.computeIfAbsent​(Object key, Function<? super Object,​? extends Object> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
  • java.utilでのFunctionの使用

    Function型のパラメータを持つjava.utilのメソッド 
    修飾子と型 メソッド 説明
    static <T,​ U extends Comparable<? super U>>
    Comparator<T>
    Comparator.comparing​(Function<? super T,​? extends U> keyExtractor)
    TからComparableソート・キーを抽出する関数を受け取り、そのソート・キーで比較する Comparator<T>を返します。
    static <T,​ U> Comparator<T> Comparator.comparing​(Function<? super T,​? extends U> keyExtractor, Comparator<? super U> keyComparator)
    Tからソート・キーを抽出する関数を受け取り、指定されたComparatorを使ってそのソート・キーで比較するComparator<T>を返します。
    V HashMap.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    V Hashtable.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    default V Map.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    <U> Optional<U> Optional.flatMap​(Function<? super T,​? extends Optional<? extends U>> mapper)
    値が存在する場合、指定されたOptional-bearingマッピング関数を値に適用した結果を返します。それ以外の場合は空のOptionalを返します。
    <U> Optional<U> Optional.map​(Function<? super T,​? extends U> mapper)
    値が存在する場合は、与えられたマッピング関数をその値に適用した結果を(Optional.ofNullable(T)のように)記述するOptionalを返します。それ以外の場合は、空のOptionalを返します。
    default <U extends Comparable<? super U>>
    Comparator<T>
    Comparator.thenComparing​(Function<? super T,​? extends U> keyExtractor)
    Comparableソート・キーを抽出する関数を含む辞書式順序コンパレータを返します。
    default <U> Comparator<T> Comparator.thenComparing​(Function<? super T,​? extends U> keyExtractor, Comparator<? super U> keyComparator)
    指定されたComparatorで比較されるキーを抽出する関数を含む辞書式順序コンパレータを返します。
  • java.util.concurrentでのFunctionの使用

    Function型のパラメータを持つjava.util.concurrentのメソッド 
    修飾子と型 メソッド 説明
    <U> CompletionStage<U> CompletionStage.applyToEither​(CompletionStage<? extends T> other, Function<? super T,​U> fn)
    このステージまたは指定された他のステージが正常に完了したときに、対応する結果を指定された関数への引数に設定して実行される新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.applyToEitherAsync​(CompletionStage<? extends T> other, Function<? super T,​U> fn)
    このステージまたは指定された他のステージが正常に完了したときに、対応する結果を指定された関数への引数に設定し、このステージのデフォルトの非同期実行機能を使用して実行される新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.applyToEitherAsync​(CompletionStage<? extends T> other, Function<? super T,​U> fn, Executor executor)
    このステージまたは指定された他のステージが正常に完了したときに、対応する結果を指定されたアクションへの引数に設定し、指定されたエグゼキュータを使用して実行される新しいCompletionStageを返します。
    V ConcurrentHashMap.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    default V ConcurrentMap.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない(またはnullにマップされている)場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    V ConcurrentSkipListMap.computeIfAbsent​(K key, Function<? super K,​? extends V> mappingFunction)
    指定されたキーがまだ値に関連付けられていない場合、指定されたマッピング関数を使用してその値の計算を試行し、nullでない場合はそれをこのマップに入力します。
    CompletionStage<T> CompletionStage.exceptionally​(Function<Throwable,​? extends T> fn)
    このステージが例外で完了したときに、このステージの例外を指定された関数への引数に設定して実行される新しいCompletionStageを返します。
    default CompletionStage<T> CompletionStage.exceptionallyAsync​(Function<Throwable,​? extends T> fn)
    新しいCompletionStageを返します。このステージが例外的に完了すると、この段階でデフォルトの非同期実行機能を使用し、指定された関数の引数としてこの段階例外で実行されます。
    default CompletionStage<T> CompletionStage.exceptionallyAsync​(Function<Throwable,​? extends T> fn, Executor executor)
    このステージが例外的に完了すると、指定されたエグゼキュータを使用して、指定された関数の引数としてこのステージ例外で実行される新しいCompletionStageを返します。
    default CompletionStage<T> CompletionStage.exceptionallyCompose​(Function<Throwable,​? extends CompletionStage<T>> fn)
    このステージが異常終了したときに、このステージ例外に適用された提供された関数の結果を使用して構成された、新しいCompletionStageを返します。
    default CompletionStage<T> CompletionStage.exceptionallyComposeAsync​(Function<Throwable,​? extends CompletionStage<T>> fn)
    このステージが異常終了したときに、このステージのデフォルトの非同期実行機能を使用して、このステージ例外に適用された提供関数の結果を使用して構成された新しいCompletionStageを返します。
    default CompletionStage<T> CompletionStage.exceptionallyComposeAsync​(Function<Throwable,​? extends CompletionStage<T>> fn, Executor executor)
    新しいCompletionStageを返します。このステージが例外的に完了すると、指定されたエグゼキュータを使用して、このステージ例外に適用された指定関数の結果を使用して構成されます。
    <U> void ConcurrentHashMap.forEachEntry​(long parallelismThreshold, Function<Map.Entry<K,​V>,​? extends U> transformer, Consumer<? super U> action)
    各エントリのnull以外の各変換に対して指定されたアクションを実行します。
    <U> void ConcurrentHashMap.forEachKey​(long parallelismThreshold, Function<? super K,​? extends U> transformer, Consumer<? super U> action)
    各キーのnull以外の各変換に対して指定されたアクションを実行します。
    <U> void ConcurrentHashMap.forEachValue​(long parallelismThreshold, Function<? super V,​? extends U> transformer, Consumer<? super U> action)
    各値のnull以外の各変換に対して指定されたアクションを実行します。
    <U> U ConcurrentHashMap.reduceEntries​(long parallelismThreshold, Function<Map.Entry<K,​V>,​? extends U> transformer, BiFunction<? super U,​? super U,​? extends U> reducer)
    指定されたリデューサを使用して値を結合することにより、すべてのエントリの指定された変換の累積結果を返します。結果がない場合はnullを返します。
    <U> U ConcurrentHashMap.reduceKeys​(long parallelismThreshold, Function<? super K,​? extends U> transformer, BiFunction<? super U,​? super U,​? extends U> reducer)
    指定されたリデューサを使用して値を結合することにより、すべてのキーの指定された変換の累積結果を返します。結果がない場合はnullを返します。
    <U> U ConcurrentHashMap.reduceValues​(long parallelismThreshold, Function<? super V,​? extends U> transformer, BiFunction<? super U,​? super U,​? extends U> reducer)
    指定されたリデューサを使用して値を結合することにより、すべての値の指定された変換の累積結果を返します。結果がない場合はnullを返します。
    <U> U ConcurrentHashMap.searchEntries​(long parallelismThreshold, Function<Map.Entry<K,​V>,​? extends U> searchFunction)
    各エントリに指定された検索関数を適用したnull以外の結果を返します。結果がない場合はnullを返します。
    <U> U ConcurrentHashMap.searchKeys​(long parallelismThreshold, Function<? super K,​? extends U> searchFunction)
    各キーに指定された検索関数を適用したnull以外の結果を返します。結果がない場合はnullを返します。
    <U> U ConcurrentHashMap.searchValues​(long parallelismThreshold, Function<? super V,​? extends U> searchFunction)
    各値に指定された検索関数を適用したnull以外の結果を返します。結果がない場合はnullを返します。
    <U> CompletionStage<U> CompletionStage.thenApply​(Function<? super T,​? extends U> fn)
    このステージが正常に完了したときに、このステージの結果を指定された関数への引数に設定して実行される新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.thenApplyAsync​(Function<? super T,​? extends U> fn)
    このステージが正常に完了したときに、このステージの結果を指定された関数への引数に設定し、このステージのデフォルトの非同期実行機能を使用して実行される新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.thenApplyAsync​(Function<? super T,​? extends U> fn, Executor executor)
    このステージが正常に完了したときに、このステージの結果を指定された関数への引数に設定し、指定されたエグゼキュータを使用して実行される新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.thenCompose​(Function<? super T,​? extends CompletionStage<U>> fn)
    指定された関数から返されたCompletionStageと同じ値で完了した新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.thenComposeAsync​(Function<? super T,​? extends CompletionStage<U>> fn)
    このステージのデフォルトの非同期実行機能を使用して実行された、指定された関数から返されたCompletionStageと同じ値で完了した新しいCompletionStageを返します。
    <U> CompletionStage<U> CompletionStage.thenComposeAsync​(Function<? super T,​? extends CompletionStage<U>> fn, Executor executor)
    指定されたExecutorによって返されたCompletionStageと同じ値で完了し、指定されたExecutorを使用して実行される新しいCompletionStageを返します。
  • java.util.functionでのFunctionの使用

    java.util.functionでのFunctionのサブインタフェース 
    修飾子と型 インタフェース 説明
    interface  UnaryOperator<T>
    単一のオペランドに作用してオペランドと同じ型の結果を生成する操作を表します。
    Functionを返すjava.util.functionのメソッド 
    修飾子と型 メソッド 説明
    default <V> Function<T,​V> Function.andThen​(Function<? super R,​? extends V> after)
    まず入力にこの関数を適用し、次に結果に関数afterを適用する合成関数を返します。
    default <V> Function<V,​R> Function.compose​(Function<? super V,​? extends T> before)
    まず入力に関数beforeを適用し、次に結果にこの関数を適用する合成関数を返します。
    static <T> Function<T,​T> Function.identity()
    常に入力引数を返す関数を返します。
    Function型のパラメータを持つjava.util.functionのメソッド 
    修飾子と型 メソッド 説明
    default <V> BiFunction<T,​U,​V> BiFunction.andThen​(Function<? super R,​? extends V> after)
    まず入力にこの関数を適用し、次に結果に関数afterを適用する合成関数を返します。
    default <V> Function<T,​V> Function.andThen​(Function<? super R,​? extends V> after)
    まず入力にこの関数を適用し、次に結果に関数afterを適用する合成関数を返します。
    default <V> Function<V,​R> Function.compose​(Function<? super V,​? extends T> before)
    まず入力に関数beforeを適用し、次に結果にこの関数を適用する合成関数を返します。
  • java.util.loggingでのFunctionの使用

    Functionのパラメータを持つjava.util.loggingのメソッド
    修飾子と型 メソッド 説明
    void LogManager.updateConfiguration​(InputStream ins, Function<String,​BiFunction<String,​String,​String>> mapper)
    ロギング構成を更新します。
    void LogManager.updateConfiguration​(Function<String,​BiFunction<String,​String,​String>> mapper)
    ロギング構成を更新します。
  • java.util.regexでのFunctionの使用

    Functionのパラメータを持つjava.util.regexのメソッド
    修飾子と型 メソッド 説明
    String Matcher.replaceAll​(Function<MatchResult,​String> replacer)
    パターンに一致する入力シーケンスのすべてのサブシーケンスを、そのサブシーケンスに対応するこのマッチャの一致結果に与えられた置換関数を適用した結果に置き換えます。
    String Matcher.replaceFirst​(Function<MatchResult,​String> replacer)
    パターンに一致する入力シーケンスの最初のサブシーケンスを、そのサブシーケンスに対応するこのマッチャの一致結果に与えられた置換関数を適用した結果に置き換えます。
  • java.util.streamでのFunctionの使用

    Functionを返すjava.util.streamのメソッド 
    修飾子と型 メソッド 説明
    Function<A,​R> Collector.finisher()
    中間蓄積の型Aから最終結果の型Rへの最終的な変換を実行します。
    Function型のパラメータを持つjava.util.streamのメソッド 
    修飾子と型 メソッド 説明
    static <T,​ A,​ R,​ RR> Collector<T,​A,​RR> Collectors.collectingAndThen​(Collector<T,​A,​R> downstream, Function<R,​RR> finisher)
    追加の仕上げ変換が実行されるようにCollectorを適応させます。
    <R> Stream<R> Stream.flatMap​(Function<? super T,​? extends Stream<? extends R>> mapper)
    このストリームの各要素をマップされたストリーム(指定されたマッピング関数を各要素に適用することで得られる)の内容で置き換えた結果から成るストリームを返します。
    static <T,​ U,​ A,​ R> Collector<T,​?,​R> Collectors.flatMapping​(Function<? super T,​? extends Stream<? extends U>> mapper, Collector<? super U,​A,​R> downstream)
    蓄積前に各入力要素にフラット・マッピング関数を適用することにより、型Uの要素を受け入れるCollectorを型Tの受け入れ要素に受け入れます。
    DoubleStream Stream.flatMapToDouble​(Function<? super T,​? extends DoubleStream> mapper)
    このストリームの各要素を、その要素に指定されたマッピング関数を適用することによって生成されるマップ先ストリームの内容で置き換えた結果から構成されるDoubleStreamを返します。
    IntStream Stream.flatMapToInt​(Function<? super T,​? extends IntStream> mapper)
    このストリームの各要素をマップされたストリーム(指定されたマッピング関数を各要素に適用することで得られる)の内容で置き換えた結果から成るIntStreamを返します。
    LongStream Stream.flatMapToLong​(Function<? super T,​? extends LongStream> mapper)
    このストリームの各要素をマップされたストリーム(指定されたマッピング関数を各要素に適用することで得られる)の内容で置き換えた結果から成るLongStreamを返します。
    static <T,​ K> Collector<T,​?,​Map<K,​List<T>>> Collectors.groupingBy​(Function<? super T,​? extends K> classifier)
    分類関数に従って要素をグループ化し、結果をMapに格納して返す、T型の入力要素に対する「グループ化」操作を実装したCollectorを返します。
    static <T,​ K,​ D,​ A,​ M extends Map<K,​ D>>
    Collector<T,​?,​M>
    Collectors.groupingBy​(Function<? super T,​? extends K> classifier, Supplier<M> mapFactory, Collector<? super T,​A,​D> downstream)
    分類関数に従って要素をグループ化した後、指定された下流Collectorを使って特定のキーに関連付けられた値のリダクション操作を実行する、T型の入力要素に対するカスケード「グループ化」操作を実装したCollectorを返します。
    static <T,​ K,​ A,​ D> Collector<T,​?,​Map<K,​D>> Collectors.groupingBy​(Function<? super T,​? extends K> classifier, Collector<? super T,​A,​D> downstream)
    分類関数に従って要素をグループ化した後、指定された下流Collectorを使って特定のキーに関連付けられた値のリダクション操作を実行する、T型の入力要素に対するカスケード「グループ化」操作を実装したCollectorを返します。
    static <T,​ K> Collector<T,​?,​ConcurrentMap<K,​List<T>>> Collectors.groupingByConcurrent​(Function<? super T,​? extends K> classifier)
    分類関数に従って要素をグループ化する、T型の入力要素に対する「グループ化」操作を実装した並行Collectorを返します。
    static <T,​ K,​ A,​ D,​ M extends ConcurrentMap<K,​ D>>
    Collector<T,​?,​M>
    Collectors.groupingByConcurrent​(Function<? super T,​? extends K> classifier, Supplier<M> mapFactory, Collector<? super T,​A,​D> downstream)
    分類関数に従って要素をグループ化した後、指定された下流Collectorを使って特定のキーに関連付けられた値のリダクション操作を実行する、T型の入力要素に対するカスケード「グループ化」操作を実装した並行Collectorを返します。
    static <T,​ K,​ A,​ D> Collector<T,​?,​ConcurrentMap<K,​D>> Collectors.groupingByConcurrent​(Function<? super T,​? extends K> classifier, Collector<? super T,​A,​D> downstream)
    分類関数に従って要素をグループ化した後、指定された下流Collectorを使って特定のキーに関連付けられた値のリダクション操作を実行する、T型の入力要素に対するカスケード「グループ化」操作を実装した並行Collectorを返します。
    <R> Stream<R> Stream.map​(Function<? super T,​? extends R> mapper)
    このストリームの要素に指定された関数を適用した結果から構成されるストリームを返します。
    static <T,​ U,​ A,​ R> Collector<T,​?,​R> Collectors.mapping​(Function<? super T,​? extends U> mapper, Collector<? super U,​A,​R> downstream)
    U型の要素を受け取るCollectorT型の要素を受け取れるように適応させるため、各入力要素にマッピング関数を適用した後で蓄積を行うようにします。
    static <T,​ A,​ R> Collector<T,​A,​R> Collector.of​(Supplier<A> supplier, BiConsumer<A,​T> accumulator, BinaryOperator<A> combiner, Function<A,​R> finisher, Collector.Characteristics... characteristics)
    指定されたsupplieraccumulatorcombiner、およびfinisher関数で記述される新しいCollectorを返します。
    static <T,​ U> Collector<T,​?,​U> Collectors.reducing​(U identity, Function<? super T,​? extends U> mapper, BinaryOperator<U> op)
    指定されたマッピング関数とBinaryOperatorの下で入力要素のリダクションを実行するCollectorを返します。
    static <T,​ K,​ U> Collector<T,​?,​ConcurrentMap<K,​U>> Collectors.toConcurrentMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper)
    ConcurrentMap内に要素を累積する並行Collectorを返します(指定されたマッピング関数を入力要素に適用した結果が、マップのキーと値になる)。
    static <T,​ K,​ U> Collector<T,​?,​ConcurrentMap<K,​U>> Collectors.toConcurrentMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper, BinaryOperator<U> mergeFunction)
    ConcurrentMap内に要素を累積する並行Collectorを返します(指定されたマッピング関数を入力要素に適用した結果が、マップのキーと値になる)。
    static <T,​ K,​ U,​ M extends ConcurrentMap<K,​ U>>
    Collector<T,​?,​M>
    Collectors.toConcurrentMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper, BinaryOperator<U> mergeFunction, Supplier<M> mapFactory)
    ConcurrentMap内に要素を累積する並行Collectorを返します(指定されたマッピング関数を入力要素に適用した結果が、マップのキーと値になる)。
    static <T,​ K,​ U> Collector<T,​?,​Map<K,​U>> Collectors.toMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper)
    Map(そのキーと値は指定されたマッピング関数を入力要素に適用した結果である)内に要素を蓄積するCollectorを返します。
    static <T,​ K,​ U> Collector<T,​?,​Map<K,​U>> Collectors.toMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper, BinaryOperator<U> mergeFunction)
    Map(そのキーと値は指定されたマッピング関数を入力要素に適用した結果である)内に要素を蓄積するCollectorを返します。
    static <T,​ K,​ U,​ M extends Map<K,​ U>>
    Collector<T,​?,​M>
    Collectors.toMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper, BinaryOperator<U> mergeFunction, Supplier<M> mapFactory)
    Map(そのキーと値は指定されたマッピング関数を入力要素に適用した結果である)内に要素を蓄積するCollectorを返します。
    static <T,​ K,​ U> Collector<T,​?,​Map<K,​U>> Collectors.toUnmodifiableMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper)
    入力要素を「変更不可能なマップ」に蓄積するCollectorを返します。そのキーと値は、提供されたマッピング関数を入力要素に適用した結果です。
    static <T,​ K,​ U> Collector<T,​?,​Map<K,​U>> Collectors.toUnmodifiableMap​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper, BinaryOperator<U> mergeFunction)
    入力要素を「変更不可能なマップ」に蓄積するCollectorを返します。そのキーと値は、提供されたマッピング関数を入力要素に適用した結果です。
  • jdk.jshellでのFunctionの使用

    Functionのパラメータを持つjdk.jshellのメソッド
    修飾子と型 メソッド 説明
    JShell.Builder JShell.Builder.fileManager​(Function<StandardJavaFileManager,​StandardJavaFileManager> mapping)
    コンパイルとソース解析で使用するようにFileManagerを構成します。