Rumah  >  Artikel  >  Java  >  Bagaimana Menghuraikan Tatasusunan JSON dengan Gson: Penyelesaian Mudah?

Bagaimana Menghuraikan Tatasusunan JSON dengan Gson: Penyelesaian Mudah?

Linda Hamilton
Linda Hamiltonasal
2024-11-04 02:00:29578semak imbas

How to Parse JSON Arrays with Gson: A Simple Solution?

Menghuraikan Tatasusunan JSON dengan Gson

Memandangkan respons JSON yang mengandungi tatasusunan objek, tugasnya adalah untuk menghuraikannya menggunakan Gson. Output JSON yang disediakan menyerupai tatasusunan objek dengan sifat seperti "id" dan "tajuk."

Pendekatan Awal

Percubaan awal melibatkan mencipta kelas PostEntity yang merangkumi sebuah ArrayList bagi objek Post. Walau bagaimanapun, pendekatan ini gagal menghasilkan sebarang hasil, tiada ralat atau amaran mencatat log.

Penyelesaian

Untuk menghuraikan JSONArray dengan berkesan, tidak perlu membalut Post kelas dalam kelas lain seperti PostEntity. Selain itu, langkah perantaraan untuk menukar rentetan JSON kepada JSONObject adalah berlebihan.

Berikut ialah kod yang diperbetulkan:

<code class="java">Gson gson = new Gson();
String jsonOutput = "Your JSON String";
Type listType = new TypeToken<List<Post>>() {
}.getType();
List<Post> posts = gson.fromJson(jsonOutput, listType);</code>

Penjelasan

The Kelas TypeToken digunakan untuk menentukan jenis objek yang dihuraikan. Dalam kes ini, jenisnya ialah Senarai objek Post. Contoh Gson kemudiannya digunakan untuk menghuraikan rentetan JSON dan menyahsirikannya ke dalam jenis yang ditentukan.

Dengan menggunakan pendekatan ini, anda boleh menghuraikan JSONArray secara langsung dan mengakses objek Post individu dalam tatasusunan.

Atas ialah kandungan terperinci Bagaimana Menghuraikan Tatasusunan JSON dengan Gson: Penyelesaian Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn