Java 使用GSON序列化对象

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类型擦除而丢失。可以通过为泛型类型指定正确的参数化类型来解决此问题。 尝试参数化类型,如

如何使用gson将此对象序列化和反序列化为json:

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);