gpt4 book ai didi

java - 如何使用 toString 序列化 Map 的内容?

转载 作者:行者123 更新时间:2023-12-01 09:32:29 25 4
gpt4 key购买 nike

我尝试使用 json4s native 库。以下是我的使用方法:

Builder b = new JsonMessageBuilder();
Map<String, List<Object>> m2 = new HashMap<>();
m2.put("e", Arrays.asList(new StringBuilder(123)));
b.message(JavaConverters.mapAsScalaMapConverter(m2).asScala());

public static class Test{
@Override
public String toString(){
return "test";
}
}

哪里

class JsonMessageBuilder{
def message[A <: AnyRef](a: A) = println(Serialization.write(a))
}

但是代码打印出这个:

{"e":[{}]}

如何在 map 中强制序列化 toString 结果?我想要拥有

{"e":["test"]}

最佳答案

问题很可能是您没有正确实例化 StringBuilder,即没有将参数 123 用引号引起来。这就是为什么你得到一个空的字符串生成器。当打印 {"e":[{}]} 时,序列化正确进行。试试这个:

m2.put("e", Arrays.asList(new StringBuilder("123")));

关于java - 如何使用 toString 序列化 Map 的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39292625/

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