JsonElement 是整数还是浮点数?

ype*_*per 5 java gson

是否可以确定 GSONJsonElement实例是整数还是浮点数?

我能够确定它是否是一个数字:

JsonElement value = ...
boolean isNumber = value.getAsJsonPrimitive().isNumber();
Run Code Online (Sandbox Code Playgroud)

但是如何确定它是整数还是浮点数,以便我随后可以使用正确的转换方法?任何一个

float f = value.getAsJsonPrimitive().getAsFloat();
Run Code Online (Sandbox Code Playgroud)

或者

int i = value.getAsJsonPrimitive().getAsInt();
Run Code Online (Sandbox Code Playgroud)

编辑:另一个问题可能会回答为什么这可能不会在 GSON 中实现,但这个问题绝对不是它的重复。

小智 -1

使用类似的东西,因此如果返回 json 对象是浮点或整数的实例,则可以应用所需的获取:

JSONObject jObj = new JSONObject(jString);
Object aObj = jObj.get("a");
if(aObj instanceof Integer){
    System.out.println(aObj);
}
Run Code Online (Sandbox Code Playgroud)