gpt4 book ai didi

java - JsonElement 是整数还是 float ?

转载 作者:行者123 更新时间:2023-12-01 06:49:37 29 4
gpt4 key购买 nike

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

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

JsonElement value = ...
boolean isNumber = value.getAsJsonPrimitive().isNumber();

但是如何确定它是整数还是浮点数,以便我随后可以使用正确的转换方法?任何一个
float f = value.getAsJsonPrimitive().getAsFloat();

或者
int i = value.getAsJsonPrimitive().getAsInt();

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

最佳答案

到目前为止,我发现的唯一方法是在字符串上使用正则表达式:

if (value.getAsJsonPrimitive().isNumber()) {
String num = value.getAsString();
boolean isFloat = num.matches("[-+]?[0-9]*\\.[0-9]+");
if (isFloat)
System.out.println("FLOAT");
else
System.out.println("INTEGER");
}

这正确地将 123 确定为整数,并将 123.45 和 123.0 确定为浮点数。

关于java - JsonElement 是整数还是 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53283825/

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