2017-09-25 21 views
3

コレクションは、インプリメンテーションだけでなくインターフェースを使用してコレクションを構築できるような汎用戻り型を持つことができます。コレクションの汎用戻り型

public static void main(String[] args) { 
    List<Test1> list = ImmutableList.of(new Test1()); 
    List<ITest> test_return_1 = buildIntRange(list); 
    List<Test1> test_return_2 = buildIntRange(list); //error 
} 

private static <K extends ITest> List<ITest> buildIntRange(List<K> test) { 
    return ImmutableList.copyOf(test); 
} 

答えて

4

です。 ImmutableList.copyOfと同じ署名を使用するか、直接ImmutableList.copyOfを使用してください:

static <T> List<T> copyOf(Iterable<? extends T> collection) 
関連する問題