实际上我想创建一个能够处理多种类型的ArrayList的函数。
public void someFunction(Class ArrayList<protocol>) {
ArrayList<?> object = new ArrayList<protocol>;
}
有类似的东西,有什么建议吗?
答案 0 :(得分:1)
可能对你有所帮助..
public class TestClass {
public void function(List<? extends Object> temp){
ArrayList<? extends Object> obj=(ArrayList<? extends Object>) temp;
}
}
然后您可以使用不同类型的参数以这种方式调用此函数。
TestClass test= new TestClass();
test.function(new ArrayList<String>());
test.function(new ArrayList<Integer>());
test.function(new ArrayList<TestClass>());
答案 1 :(得分:0)
我认为你可能正在寻找generics的力量,这样的事情可能有所帮助:
public class MyClass<T>
{
public void someFunction(ArrayList<T> myArray)
{
... //do anything with generic T array.
}
}
然后,您可以轻松地实例化MyClass,并使用编译安全编码调用方法someFunction
。
祝你好运