有个函数是这样的
a(Object...args);
我要写个函数b来调用这个a,但是也不知道具体的参数,参数都存在ArrayList里,要怎么实现?
b(ArrayList args){
 //????
}

解决方案 »

  1.   

    a(Object...args);   这里的参数是可变参数,就是说传进去的参数个数不限,有点像c#,另外它还接受数组,你可以把数组作为参数传进去
      

  2.   

    好人当到底,再给你举个例子吧。
    import java.util.ArrayList;public class TestVarArgus
    {
    public static void a(Object... args)
    {
    for (Object o : args)
    System.out.print(o + " ");
    } public static void b(ArrayList args)
    {
    a(args.toArray());
    } public static void main(String args[])
    {
    ArrayList<Integer> a = new ArrayList<Integer>();
    a.add(1);
    a.add(2);
    a.add(3);
    b(a);
    }
    }
    main函数是我举得例子,你那具体的情况不太清楚,但是函数a和b就是这样调就可以了。
      

  3.   

    public static void a(Object... a )
    {
    for(int i=0;i<a.length;i++)
    System.out.println(a[i]);
    }

    public static  void b(List args)
    {
    a(args.toArray());
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub List list = new ArrayList();

    list.add("hello");
    list.add("world");
    b(list);
    }