gpt4 book ai didi

java - 我使用gson序列化java对象,并将LongSerializationPolicy设置为LongSerializationPolicy.STRING,但我无法理解结果

转载 作者:太空宇宙 更新时间:2023-11-04 10:52:46 27 4
gpt4 key购买 nike

我使用gson序列化java对象,并设置LongSerializationPolicy.STRING来序列化Long字段。像这样:

Gson gson = new GsonBuilder()
.setLongSerializationPolicy(LongSerializationPolicy.STRING)
.create();

Map<String, Long> resultMap = Maps.newHashMap();
resultMap.put("id", 123456789L);

JsonObject dataObj = new JsonObject();
dataObj,addProperty("id", 123456789L);

System.out.println(gson.toJson(resultMap));
System.out.println(gson.toJson(dataObj));

结果是:

{"id":"123456789"}
{"id":123456789}

为什么结果不一样?我期望的两个结果是 {"id":"123456789L"}

最佳答案

我相信那是因为JsonObject将您的值添加为 Map<String,JsonValue>JsonValue延伸Object ,因此当序列化您输入的值时,任何内容都将被解析为字符串。

关于java - 我使用gson序列化java对象,并将LongSerializationPolicy设置为LongSerializationPolicy.STRING,但我无法理解结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47629080/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com