具有接受任何对象列表的方法的Java类

具有接受任何对象列表的方法的Java类,java,generics,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>

我想创建一个无需任何参数即可创建的类,该类具有一个接受任何对象列表的方法,其行为如下:

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
}

为什么这样不行

我认为问题在于您将参数放在类上,但实际上只需要放在方法上。尝试:

public class MyClass {

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

您看到了什么错误?无法对非静态方法进行静态引用…,尝试将该方法设置为静态,但这会导致更多错误。哈哈,我错过了阅读您的示例。有两件事,类名应该以大写的MyClass开头,其次需要向方法添加静态修饰符。请参阅下面我的答案和一个示例。这一点很好,但仍然存在错误,无法对非静态方法进行静态引用…在我第二次编辑之前,您可能已经看到了我的示例。方法上应该有静态修饰符。这就解决了它,非常感谢。计时器一过,我就接受答案