Список строк из объекта - PullRequest
0 голосов
/ 12 января 2012

Я получаю Object obj от метода. obj = String[7]. У меня проблемы с получением этих 7 строк и их распечаткой.

Как мне извлечь из него строки?

Ответы [ 3 ]

3 голосов
/ 12 января 2012

Если вы уверены, что у вас есть массив, вы можете использовать Arrays.toString():

System.out.println(Arrays.toString((Object[])obj));
2 голосов
/ 12 января 2012
Object obj = ...;
...
if (obj instanceof String[]) {
  for (String element : ((String[]) obj)) { ... }
}

Если вам нужно работать с различными типами массивов, я бы посмотрел на API отражения.

1 голос
/ 12 января 2012

Если вы не знаете, является ли массив массивом объектов или примитивным массивом (что означает, что вы не можете его приводить), вы можете использовать класс Array.

Object arr = new int[]{1, 2, 3};
for (int i = 0, len = Array.getLength(arr); i < len; i++)
    System.out.println(Array.get(arr, i));

Если вы знаете, что это String [], сделайте его этим классом.

...