2017-09-21 1 views
2

check out the size and the element count in debug windowOriginal-Array-Größe und list.size gibt unterschiedliche Werte

Ich war die Schaffung eines RecyclerView in dem der Adapter Elemente aus einer JSON-Datei erhält, die ich in Assets erstellt folder.I Gson verwende es zur Liste zu konvertieren Objekte. während des Betriebs stürzte die App wegen Nullpointer Ausnahme. Während des Debuggens habe ich gesehen, dass die Array-Größe nicht mit der ursprünglichen Elementanzahl übereinstimmt. Kann jemand seine Ansichten dazu teilen?

hatte ich list.size-1 im getItemCount() anstelle von gerade hinzufügen list.size, um für meine Anwendung hinzufügen zu arbeiten.

im Screenshot am unteren Rand der Seite ist die Arry-Größe 8 und geöffnet Array zeigt nur 7 Elemente, die nie passieren sollte.

+0

Der Versuch, zu verstehen, warum Sie dachten, einen Screenshot einfacher war Einnahme als Kopieren/Einfügen ... – anomeric

+1

@anomeric Ich kann nicht verstehen, wie die Größe von actionEvents 8 wurde. Deshalb ein Screenshot. Nach meinem Verständnis geht es hier nicht um meinen Code. Die Größe sollte 7 sein, es gibt nur 7 Elemente im Array –

Antwort

0

Okay, dies liegt an einem zusätzlichen Komma nach dem letzten Objekt in meinem JSON-Array, das ich zu analysieren versuchte. Beim Konvertieren in eine Objektliste wegen des Kommas denkt GSON, dass noch ein Objekt kommt. Das Komma wurde entfernt und alles hat gut funktioniert. Das Array im Debugging-Fenster zu sehen macht keinen Sinn, hat die App funktioniert aber immer noch nicht verstanden gab 8 für ein 7-Elemente-Array zurück.

von Perception's Answer gefunden, dass Größe gibt eine Instanz variable.have in Gson Quelle zu suchen, um zu wissen, wie es das Parsen tut

Verwandte Themen