2

所以我有一个具有以下方法签名的类

public void doStuff(**Object[] lists**)
{ 
    ...
}

我无法弄清楚如何访问列表中的各个元素

例如,如果传递的对象之一(比如list[0])是字符数组(Character[] = {'a', 'd', 'z'}),那么我如何从这个方法中找出其中lists[0]包含“a”、“d”和“z”的方法?

我试过这样的代码:Object list0 = list[0];但是我完全不知道如何获取list[0]内容(在这种情况下,'a''d'和'z')。

有任何想法吗?

(更新)

感谢您的回复。我能够修改你们的想法并使其发挥作用:)

4

2 回答 2

4

只需根据需要向下钻取参数:

public void doStuff(Object[] lists) 
{ 
   Object entry0 = lists[0]; //Object Array only contains objects.
   char[] charArr = (char[]) entry0; // Explicit cast: You know that lists[0] is a char Array!
   for (char c : charArr)
   {
     System.out.println("Char Array contains: " + c);
   }
}
于 2013-09-20T00:01:52.900 回答
1

如果您的数组有字符串:(否则替换您正在使用的任何对象)

Object first = lists[0];
ArrayList<String> individual = (ArrayList<String>)first;
String itemOne = individual.get(0);
于 2013-09-20T00:03:40.143 回答