Rumah >Java >javaTutorial >Bagaimanakah Saya Boleh Mencipta ArrayList Ditaip secara Dinamik dalam Gson Menggunakan Reflection?

Bagaimanakah Saya Boleh Mencipta ArrayList Ditaip secara Dinamik dalam Gson Menggunakan Reflection?

DDD
DDDasal
2024-12-21 05:20:11193semak imbas

How Can I Dynamically Create a Typed ArrayList in Gson Using Reflection?

Melaksanakan Dynamic Type ArrayList Menggunakan Gson TypeToken and Reflection

Dalam siasatan ini, matlamatnya adalah untuk mencipta ArrayList ditaip secara dinamik menggunakan Gson, di mana jenis data ditentukan pada masa jalan menggunakan refleksi Java.

Pendekatan awal yang terlibat menggunakan TypeToken untuk menentukan jenis ArrayList yang dikehendaki. Walau bagaimanapun, ia mengakibatkan ralat masa jalan.

Untuk menyelesaikan isu ini, penyelesaian yang disemak memanfaatkan kaedah TypeToken baharu getParameterized(Type rawType, Type... typeArguments) yang diperkenalkan dalam Gson 2.8.0. Kaedah ini membolehkan anda mencipta TypeToken untuk jenis parameter tertentu.

Kod yang dikemas kini:

private <T> Type setModelAndGetCorrespondingList2(Class<T> type) {
    return TypeToken.getParameterized(ArrayList.class, type).getType();
}

Dengan penyelesaian yang disemak ini, anda boleh mencipta TypeToken secara dinamik untuk jenis ArrayList yang dikehendaki di masa jalan menggunakan pantulan Java dan dapatkan Jenis yang sepadan melalui kaedah getType().

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta ArrayList Ditaip secara Dinamik dalam Gson Menggunakan Reflection?. 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