1

リフレクションを使用して、実行時に値オブジェクトのプロパティを設定しています。すべてが文字列である場合、私はこの質問をしていないかもしれませんが、そうではありません。json を返す Web サービスがあり、サービスから返された json を使用してオブジェクトを設定したいと考えています。json文字列にソートされたキーを含むalphabeticalKeysという文字列のArrayListがあります。オブジェクト(ユーザー)を動的に設定するために使用しているコードは次のとおりです。

for(String fieldName : alphabeticalKeys){
    Log.d("JSON:" + fieldName, json.getString(fieldName));
    Field f = userClass.getDeclaredField(fieldName);
    f.setAccessible(true);
    f.set(user, jsonObject.get(fieldName));
} 

json データ セットには、strings、double などがあります。これは、返されるオブジェクトの型がコンパイル時に不明なファクトリ クラスの一部です。また、json フィールドのデータ型は、必要なオブジェクトの型によって異なる場合があります。

json 出力は、返されたオブジェクトのフィールド名と一致するため、json 出力で返されるさまざまなデータ型を処理する方法を探しています。誰かが提案を提供できますか?

どうも!ビビアン

4

1 に答える 1