Java 使用GSON序列化对象
如何使用gson将此对象序列化和反序列化为json:Java 使用GSON序列化对象,java,android,json,serialization,gson,Java,Android,Json,Serialization,Gson,如何使用gson将此对象序列化和反序列化为json: public class test{ @Expose public List< Pair<Double,Double> > list; @Expose public int alpha; } 其中testInstance是类测试的一个实例,但由于列表中的Pair结构,它无法工作。如果对象是泛型类型,则泛型类型信息将由于Java类型擦除而丢失。可以通过为泛型类型指定正确的参数化类型来解决此问题。 尝试参数化类型,如
public class test{
@Expose
public List< Pair<Double,Double> > list;
@Expose
public int alpha;
}
其中testInstance是类测试的一个实例,但由于列表中的Pair结构,它无法工作。如果对象是泛型类型,则泛型类型信息将由于
Java类型擦除而丢失。可以通过为泛型类型指定正确的参数化类型来解决此问题。
尝试参数化类型,如List
。这应该可以工作您已经使用ExcludeFieldswithotExposeanNotation
方法配置了Gson
对象。
发件人:
将Gson配置为不考虑所有字段
未公开的序列化或反序列化
注释
你能换班吗?如果是,则必须为要序列化为JSON的每个属性添加@Expose
注释。如果没有,您可以在程序中创建类似的类并添加注释。您可以更改Pair类吗?如果是,则必须向要序列化为JSON的每个属性添加@Expose注释。如果没有,您可以在程序中创建类似的类并添加注释。感谢您回答这个问题。
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
String str = gson.toJson(testInstance,test.class);