Rumah >Java >javaTutorial >Bagaimanakah saya boleh menyahsiri Objek Senarai dengan Gson?

Bagaimanakah saya boleh menyahsiri Objek Senarai dengan Gson?

Susan Sarandon
Susan Sarandonasal
2024-12-10 19:03:12926semak imbas

How Can I Deserialize a List Object with Gson?

Menyahsiri Senarai Objek dengan Gson

Dalam usaha untuk memindahkan objek senarai menggunakan Google Gson, kesukaran untuk menyahsiri jenis generik telah timbul. Semasa mencuba penyelesaian yang diilhamkan oleh respons BalusC, mesej ralat yang menunjukkan keperluan untuk pelaksanaan kaedah muncul.

Walau bagaimanapun, pendekatan yang lebih berkesan wujud, menggunakan kelas TypeToken seperti berikut:

Type listType = new TypeToken<ArrayList<YourClass>>(){}.getType();
List<YourClass> yourClassList = new Gson().fromJson(jsonArray, listType);

Kelas TypeToken menangkap jenis masa kompilasi ke dalam objek java.lang.reflect.Type, tidak seperti objek Kelas yang hanya mewakili jenis mentah. Ini membolehkan perwakilan mana-mana jenis dalam bahasa Java, termasuk jenis generik.

Kelas TypeToken dibina tanpa nama, kerana membinanya secara langsung tidak dibenarkan. Ini adalah perlu untuk menangkap maklumat jenis dalam subkelas tanpa nama.

Adalah penting untuk ambil perhatian bahawa TypeToken hanya boleh menangkap jenis yang diketahui sepenuhnya pada masa penyusunan.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menyahsiri Objek Senarai dengan Gson?. 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