ホームページ >Java >&#&チュートリアル >リフレクションを使用して Gson で型付き ArrayList を動的に作成するにはどうすればよいですか?

リフレクションを使用して Gson で型付き ArrayList を動的に作成するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-21 05:20:11193ブラウズ

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

Gson TypeToken とリフレクションを使用した動的型 ArrayList の実装

この調査の目標は、Gson を使用して動的に型指定された ArrayList を作成することであり、データ型は実行時に決定されます。 Java リフレクションを使用します。

最初のアプローチでは、TypeToken を使用して目的のオブジェクトを指定する必要がありました。 ArrayList のタイプ。ただし、実行時エラーが発生しました。

この問題を解決するために、改訂されたソリューションでは、Gson 2.8.0 で導入された新しい TypeToken メソッド getParameterized(Type rawType, Type... typeArguments) を活用しています。このメソッドを使用すると、特定のパラメーター化された型の TypeToken を作成できます。

更新されたコード:

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

この改訂されたソリューションを使用すると、目的の ArrayList 型の TypeToken を動的に作成できます。 Java リフレクションを使用してランタイムを実行し、getType() メソッドを通じて対応する Type を取得します。

以上がリフレクションを使用して Gson で型付き ArrayList を動的に作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。