2015-10-29 2 views
0

Это мой файл в формате JSON:Доступ Список_массивы использования Log.d

[ 
    { 
     "names": "Kent", 
     "age": "43" 
    }, 
    { 
     "names": "Winnie", 
     "age": "41" 
    }, 
    { 
    "names": "Jane", 
    "age": "41" 
    } 
    ] 

И это мой код в массиве:

List<STUDENT> student = Arrays.asList(mapper.readValue(jsonFile, STUDENT[].class)); 

Как использовать log.d для доступа имен и возраст ?

Спасибо.

+0

После того, как у вас есть список студента объекты готовы, почему бы вам не использовать цикл с Log.d, чтобы печатать все тебе нужно? –

+0

Во-первых, может быть, вы просто хотите поставить точку останова и посмотреть, что внутри массива? Максимально можно было выполнить отладочный поиск с помощью ALT + F8. Во-вторых, вы пробовали 'Log.d (student.get (0) .getName());', я имею в виду, что Log является классом ведения журнала, а не данным accesor, настолько точным, что вы отправляете «ученик» в представление вы должны отправить в журнал. – Remy

+0

@ Комментарий Реми проиллюстрирован ниже в моем ответе. Лучше всего просто установить точки останова и отладить таким образом, чтобы проверить значения, а не использовать Log.d. Log.d полезен для ведения записей журнала в случае, если что-то сломается, и вы не знаете, где он находится, и хотите проследить его, не имея точек останова. Или еще один пример добавления подробного вывода при запуске программы –

ответ

0

Включен ли ваш класс STUDENT toString()? Если нет, то вот первый шаг:

@Override 
public String toString() { 
    return "STUDENT{names='" + names + "', age=" + age + "}"; 
} 

Затем в код вызова:

List<STUDENT> students = Arrays.asList(mapper.readValue(jsonFile, STUDENT[].class)); 
Log.d(this.getClass().getSimpleName(), students.toString()); 

Метод ToString() в списке будет перебирать каждый объект СТУДЕНТ и вызвать метод ToString(), реализованный в класс STUDENT.

0

Поместите точки останова рядом с строками, которые вы хотите проверить значения каждого объекта STUDENT в своем списке, щелкнув слева от номера строки в Android Studio/IntelliJ/Eclipse.

Затем запустите приложение на устройстве VIA debug, нажав кнопку ошибки, а не только обычное устройство (как вы положили его на свой телефон). Теперь, когда вы достигнете точки останова, дальнейшее выполнение приложения будет задерживаться, и вы можете контролировать переменные и значения в консоли, находящейся на IDE.

Позвольте мне знать, если это имеет смысл

Вот ссылка ссылка: http://developer.android.com/tools/debugging/debugging-studio.html

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