2009-11-12 3 views
0

Я получаю список строк из кода на Python и вам нужно его прочитать на Java. При попытке прочитать его, я получаю HashcodePython - Список строк для Java

[Ljava.lang.Object;@7cf1bb78

Я хочу прочитать значения в списке. В python мой возврат - это что-то вроде

return SUCCESS(OK, params={'data':nameList()}) 

Как я прочитал бы это на Java и распечатал содержимое, а не hashCode. В настоящее время я делаю как

Object getNames = new Object(); 
getName = getNameList(); // This is thru Apache XML RPC Client 
System.out.println(getName); 

Любая помощь или предложения?

+0

Uhm ... ваш код немного запутан, поскольку вы инициализируете Object getNames, затем «перезаписываете» его с помощью hashmap, а затем используете другой другой объект «getName» (без «s»); если вы хотите распечатать список, который вам нужно перебирать через него –

+0

getNames был опечаткой, я исправил его. Причина перезаписи объекта с помощью Hashmap была с тех пор, как я пытался сделать его общим, так или иначе, это не имеет значения. – Vivek

ответ

1

У вас уже есть то, что вы хотите. Попробуйте System.out.println(java.util.Arrays.toString(getName)); (по умолчанию toString() для массива в Java не очень полезно).

+0

Я пробовал System.out.println (java.util.Arrays.toString ((Object []) getAccount)); и выход был [] Кто-нибудь еще должен был попробовать? – Vivek

+0

Это означает, что вы получили пустой массив. Убедитесь, что сервер отправляет что-то полезное. –

+0

В Python также возникла проблема с кодом, в любом случае спасибо за решение, теперь он отлично работает :) – Vivek

0

Обычный способ распечатки каждого элемента в массиве Java будет что-то вроде:

for (Object name: (Object[]) getNameList()) { 
    System.out.println(name); 
} 

Но я подозреваю, что от вашего ответа на Aaron Digulla, что (как он говорит) вы получаете пустой массив назад. Попробуйте распечатать его на стороне Python и посмотреть, есть ли что-нибудь в нем.

Смежные вопросы