Avatar ·

Gson में Kotlin में जेनेरिक के साथ TypeToken का उपयोग कैसे करें (com.google.gson.internal.LinkedTreeMap त्रुटि का समाधान)

सभी को नमस्ते! मैं कई दिनों से Kotlin में JSON deserialization की समस्या से जूझ रहा हूँ जब जेनेरिक का उपयोग किया जाता है। मेरे पास एक फ़ंक्शन है जो क्लास का type लेता है और parsed object लौटाता है। Java में मैं कुछ इस तरह लिखता `new TypeToken>(){}.getType()`, लेकिन Kotlin में erased generics के कारण यह काम नहीं करता। यहाँ एक सरल उदाहरण है: ```kotlin data class User(val name: String, val age: Int) fun parseList(json: String, clazz: Class): List { val type = TypeToken.getParameterized(List::class.java, clazz).type return Gson().fromJson(json, type) } // उपयोग val json = """[{"name":"John","age":30}]""" val users = parseList(json, User::class.java) println(users[0].name) // त्रुटि: java.lang.ClassCastException: com.google.gson.internal.Linke