ファンクショナルインターフェイスパラメータータイプのメソッドのJavaジェネリック

marcius.tan;

このコードがコンパイルされない理由を理解できません:

package Desktop;

import java.util.function.*;

public class MyClass {

    public static <T, U> Long myMethod( Function<T, U> methodParam ) {
      return methodParam.apply("Today is happy day!");
    }

   public static void main(String[] args) {
      System.out.println( <String, Long>myMethod( Long::valueOf ) );
   }

}

だから私はこれをコンソールで受け取ります:

..\Desktop\MyClass.java:15: error: illegal start of expression
          System.out.println( <String, Long>myMethod( Long::valueOf ) );
                                            ^
..\Desktop\MyClass.java:15: error: ';' expected
          System.out.println( <String, Long>myMethod( Long::valueOf ) );
                                                                     ^
2 errors

ジェネリックを使用して、メソッドパラメーターのラムダの型を含めることを期待しています。

彼らはいた :

そのはず:

public static <T, U> U myMethod(Function<T, U> methodParam, T t) {
  return methodParam.apply(t);
}

public static void main(String[] args) {
   System.out.println(myMethod(Long::valueOf, "Today is happy day!") );
}

myMethodFunctionジェネリックパラメーターを使用し受け入れるため、常に引数を指定applyしてそのメソッドを呼び出し、Stringそれがを返すことを期待することはできませんLong

代わりに、String引数を渡して、戻り値の型をに変更できますU

もちろん、このコードがスローされますNumberFormatException、あなたがそれを変換することができないので、StringLong

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

インターフェイス内のジェネリックメソッド

分類Dev

Typescriptのジェネリックス-インターフェイスメソッドとプロパティ

分類Dev

リフレクションを使用したジェネリックパラメータータイプの比較

分類Dev

ジェネリックメソッドとのインターフェース

分類Dev

Javaパラメータジェネリックインターフェイス

分類Dev

非ジェネリックインターフェイスのジェネリックメソッド

分類Dev

共通のcreateValueメソッドを定義するパラメーターを持つケースクラスのシェイプレスのジェネリックデフォルトインスタンスを使用してビルドします

分類Dev

ジェネリックインターフェイスのジェネリックインターフェイスパラメータ

分類Dev

インターフェイスのTypeScriptジェネリックメソッドシグネチャ

分類Dev

List <>メソッドを使用したJavaジェネリックインターフェイスでのコンパイラエラー

分類Dev

実行時のジェネリックコレクションタイプパラメータの指定(Javaリフレクション)

分類Dev

ジェネリックメソッドパラメーターのタイプ

分類Dev

インターフェイスメソッドJavaのジェネリック型

分類Dev

Javaのインターフェースからジェネリックメソッドを実装する

分類Dev

ジェネリックスパラメーターと戻り値型メソッドを持つJavaでリフレクションを使用してクラスのインスタンスを取得する方法

分類Dev

Javaインターフェイスのオプションメソッド

分類Dev

Javaインターフェイスのオプションメソッド

分類Dev

インターフェースを持つジェネリックメソッドの境界型パラメーター?

分類Dev

Javaジェネリックス-メソッドパラメータとメソッド戻り型のコンパイルエラー

分類Dev

ジェネリックメソッドによるインターフェイスベースクラスのインスタンス化

分類Dev

ジェネリックインターフェイスのパラメータとしてEnumSetの

分類Dev

インターフェイスやジェネリックを使用するための2つのメソッドのリファクタリング

分類Dev

Typescript:ジェネリックインターフェイス、インターフェイス関数、クラスタイプパラメータ

分類Dev

インターフェイス内の静的ファクトリメソッド

分類Dev

Java、継承、ジェネリックス-テンプレートメソッドの実装でサブタイプのパラメーターを使用する

分類Dev

インターフェイスメソッドのジェネリック型の制約

分類Dev

多くのJava Streamインターフェースメソッドが、ジェネリック型の代わりに下限のワイルドカードをパラメーターに使用するのはなぜですか?

分類Dev

ジェネリックラッパーインターフェイスタイプをどのように定義し、それをJavaのメソッド戻りタイプとして使用するのですか?

分類Dev

ジェネリックスを使用したJavaのファクトリメソッドパターン、方法

Related 関連記事

  1. 1

    インターフェイス内のジェネリックメソッド

  2. 2

    Typescriptのジェネリックス-インターフェイスメソッドとプロパティ

  3. 3

    リフレクションを使用したジェネリックパラメータータイプの比較

  4. 4

    ジェネリックメソッドとのインターフェース

  5. 5

    Javaパラメータジェネリックインターフェイス

  6. 6

    非ジェネリックインターフェイスのジェネリックメソッド

  7. 7

    共通のcreateValueメソッドを定義するパラメーターを持つケースクラスのシェイプレスのジェネリックデフォルトインスタンスを使用してビルドします

  8. 8

    ジェネリックインターフェイスのジェネリックインターフェイスパラメータ

  9. 9

    インターフェイスのTypeScriptジェネリックメソッドシグネチャ

  10. 10

    List <>メソッドを使用したJavaジェネリックインターフェイスでのコンパイラエラー

  11. 11

    実行時のジェネリックコレクションタイプパラメータの指定(Javaリフレクション)

  12. 12

    ジェネリックメソッドパラメーターのタイプ

  13. 13

    インターフェイスメソッドJavaのジェネリック型

  14. 14

    Javaのインターフェースからジェネリックメソッドを実装する

  15. 15

    ジェネリックスパラメーターと戻り値型メソッドを持つJavaでリフレクションを使用してクラスのインスタンスを取得する方法

  16. 16

    Javaインターフェイスのオプションメソッド

  17. 17

    Javaインターフェイスのオプションメソッド

  18. 18

    インターフェースを持つジェネリックメソッドの境界型パラメーター?

  19. 19

    Javaジェネリックス-メソッドパラメータとメソッド戻り型のコンパイルエラー

  20. 20

    ジェネリックメソッドによるインターフェイスベースクラスのインスタンス化

  21. 21

    ジェネリックインターフェイスのパラメータとしてEnumSetの

  22. 22

    インターフェイスやジェネリックを使用するための2つのメソッドのリファクタリング

  23. 23

    Typescript:ジェネリックインターフェイス、インターフェイス関数、クラスタイプパラメータ

  24. 24

    インターフェイス内の静的ファクトリメソッド

  25. 25

    Java、継承、ジェネリックス-テンプレートメソッドの実装でサブタイプのパラメーターを使用する

  26. 26

    インターフェイスメソッドのジェネリック型の制約

  27. 27

    多くのJava Streamインターフェースメソッドが、ジェネリック型の代わりに下限のワイルドカードをパラメーターに使用するのはなぜですか?

  28. 28

    ジェネリックラッパーインターフェイスタイプをどのように定義し、それをJavaのメソッド戻りタイプとして使用するのですか?

  29. 29

    ジェネリックスを使用したJavaのファクトリメソッドパターン、方法

ホットタグ

アーカイブ