我正在将一些代码从 Gson 更改为 Jackson,其中我必须检查当前元素的类型是否是原语。
我可以用 Gson 做这样的事情:
JsonElement element = entry.getValue();
if (element.isJsonPrimitive()) {
...
}
在 Jackson 中,Json 节点类型是其中之一
JsonNodeType:{ ARRAY、BINARY、BOOLEAN、MISSING、NULL、NUMBER、OBJECT、POJO、STRING }
最佳答案
Jackson
的 JsonNode
类具有 isValueNode
方法,应该执行相同的操作:
@Override
public final boolean isValueNode()
{
switch (getNodeType()) {
case ARRAY: case OBJECT: case MISSING:
return false;
default:
return true;
}
}
如果节点是:ARRAY
、OBJECT
或MISSING
,则返回false
;对于其他类型 - true
关于java - 如何检查 Json 元素是否为 JsonPrimitive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55359134/