是否可以将类<protocol>作为参数传递?</protocol>

时间:2013-06-07 07:01:36

标签: android android-intent

实际上我想创建一个能够处理多种类型的ArrayList的函数。

public void someFunction(Class ArrayList<protocol>) {
    ArrayList<?> object = new ArrayList<protocol>;
}

有类似的东西,有什么建议吗?

2 个答案:

答案 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

祝你好运