Java8について質問です。
下記ソースコードに「public static <T> long elapsedTime(Consumer<T> proc, T arg) {」
と書かれていますが、メソッド名の前に<T>とlongが書かれているのですが、どういう意味なのでしょうか?戻り値はlong型なはずなのに不思議です。
java
1import java.util.function.Consumer; 2 3public class Main { // add 4 // 引数でConsumer<T>型のラムダ式またはメソッド参照を受け取る 5 public static <T> long elapsedTime(Consumer<T> proc, T arg) { 6 long start = System.nanoTime(); 7 proc.accept(arg); 8 return System.nanoTime() - start; 9 } 10 11 public static void main(String[] args) { // add 12 13 // 利用側コード 14 long elapsed = elapsedTime(s -> {}, "abc"); 15 System.out.println(elapsed); 16 } 17}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/04 14:49