[解決済み】この式の対象型は、MethodReferencesの機能インターフェイスでなければならない
2022-02-18 07:38:12
質問
以下のコードがコンパイルされないのはなぜですか?
Consumer con = (s) -> System.out::println;
と書かれています。
この式のターゲット型は関数型インターフェースでなければならない
はFunctional Interfaceであるにもかかわらず、Consumerは 下記は正常に動作します。
Consumer con2 = (s) -> {System.out.println(s);};
解決するには?
メソッドの参照なので、使い方が少し違いますね。
Consumer<String> c = System.out::println;
コンシューマが取る引数(
s
) に渡されます。
println
メソッドを使用します。
こちら は、Oracleのチュートリアルです。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン