Heim >Java >javaLernprogramm >Wie kann ich mithilfe von Reflection dynamisch eine typisierte ArrayList in Gson erstellen?
Ziel dieser Untersuchung ist es, mit Gson eine dynamisch typisierte ArrayList zu erstellen, bei der der Datentyp zur Laufzeit bestimmt wird unter Verwendung von Java Reflection.
Der anfängliche Ansatz bestand darin, ein TypeToken zu verwenden, um den gewünschten Typ der ArrayList anzugeben. Dies führte jedoch zu einem Laufzeitfehler.
Um dieses Problem zu beheben, nutzt die überarbeitete Lösung die neue TypeToken-Methode getParameterized(Type rawType, Type... typeArguments), die in Gson 2.8.0 eingeführt wurde. Mit dieser Methode können Sie ein TypeToken für einen bestimmten parametrisierten Typ erstellen.
Der aktualisierte Code:
private <T> Type setModelAndGetCorrespondingList2(Class<T> type) { return TypeToken.getParameterized(ArrayList.class, type).getType(); }
Mit dieser überarbeiteten Lösung können Sie dynamisch ein TypeToken für den gewünschten ArrayList-Typ erstellen Laufzeit mithilfe der Java-Reflektion und rufen Sie den entsprechenden Typ über die Methode getType() ab.
Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von Reflection dynamisch eine typisierte ArrayList in Gson erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!