Java类,其方法接受任何对象的列表

时间:2017-03-22 03:59:08

标签: java generics

我想创建一个可以不带任何参数的类,并且有一个方法可以获取任何对象的列表并且行为如下:

List<String> list1 = Arrays.asList(new String [] {"a","b"});
List<String> result1 = myClass.myMethod(list1);

List<Integer> list2 = Arrays.asList(new String [] {1,2});
List<Integer> result1 = myClass.myMethod(list2);

这是我在简要阅读Java泛型后的尝试:

public class myClass<T> {

public List<T> myMethod(List<T> input) {
  ... 
  return input; // just an example
}

为什么这不起作用?

1 个答案:

答案 0 :(得分:0)

我认为问题在于你把参数放在了类上,但实际上只需要在方法上使用它。尝试:

public class MyClass {

  // this is a parameterized method
  public static <T> List<T> myMethod(List<T> input) {
    ... 
    return input; // just an example
  }
}