所以我有一个String,它是我在一个类上实现的toJson方法的结果,并且已经在我的测试代码中确认它是我的类的正确Json表示。我的目标是将这个String转换为JsonObject并使用Gson传递给构造函数。然而,我遇到了一个奇怪的问题。
这是我正在调用的代码:
这是我正在调用的代码:
Gson gson = new Gson();
JsonObject jObj = gson.fromJson(jsonString, JsonObject.class);
我之前在项目中的许多地方,对于其他类使用了完全相同的代码片段,并且这些代码都能够正常工作。我甚至将其中一个功能性代码片段复制到了这个测试类中并尝试了一下。然而,无论我尝试哪个版本,结果都是一样的——jObj只是一个空的括号集合。
我不明白这是怎么发生的。我已经确认 jsonString 中具有所有所需的字段。为什么 Gson 返回一个空的 JsonObject?没有任何异常被抛出。
if (jsonString.trim().isEmpty()) throw new IllegalArgumentException();
会怎样? - Dici