许多编程语言中用于表示整数的通用数据类型。使用此标记可以了解有关使用,存储或操作整数的问题。
如何将 json 转换为 Map<String, Object> 确保整数为 Integer
我有一个 json 对象,其中包含值为 String、Double 和 Integer 的嵌套对象。当我转换为 Map 时,它假设 Integer 为 Double。我怎样才能改变这个? 地图 我有一个 json 对象,其中包含值为 String、Double 和 Integer 的嵌套对象。当我转换为 Map 时,假设 Integer 为 Double。我怎样才能改变这个? Map<String, Object> map = response.getJson(); 我的回复包含以下字段 { .... "age" : 14, "average" : 12.2, .... } average 已正确转换为 Double,但年龄预计为 Integer,但在 converted 中由 Double 转换为 Map 您可以通过对 Map 进行后处理,将 Double 值转换为 Integer(如果可能),例如 static void convertIntegerToDouble(Map<String, Object> map) { Map<String, Object> updates = new HashMap<>(); for (Iterator<Entry<String, Object>> iter = map.entrySet().iterator(); iter.hasNext(); ) { Entry<String, Object> entry = iter.next(); Object value = entry.getValue(); if (value instanceof Map) { @SuppressWarnings("unchecked") Map<String, Object> submap = (Map<String, Object>) value; convertIntegerToDouble(submap); } else if (value instanceof Double) { double d = ((Double) value).doubleValue(); int i = (int) d; if (d == i) updates.put(entry.getKey(), i); } } map.putAll(updates); } 测试 Map<String, Object> map = new HashMap<>(Map.of( "A", 42.0, "B", new HashMap<>(Map.of( "K", 42.0, "L", new HashMap<>(Map.of( "R", 42.0, "S", 3.14 )), "M", 3.14 )), "C", 3.14, "D", "Foo" )); System.out.println(map); convertIntegerToDouble(map); System.out.println(map); 输出 {A=42.0, B={K=42.0, L={R=42.0, S=3.14}, M=3.14}, C=3.14, D=Foo} {A=42, B={K=42, L={R=42, S=3.14}, M=3.14}, C=3.14, D=Foo} 您可以使用 GsonBuilder 和 setObjectToNumberStrategy 在 Gson 中配置此行为: Gson gson = new GsonBuilder() .setObjectToNumberStrategy(LONG_OR_DOUBLE) .create(); byte[] data = gson.toJson(Map.of("id", 1)).getBytes(UTF_8); Map<String, Object> map = gson.fromJson(new String(data, StandardCharsets.UTF_8), Map.class); System.out.println(map);
是否可以在 Delphi 编程语言中将枚举值转换/转换为整数? 如果是的话,怎么办?
考虑到2个(或更多)整数可以在一起并且应该被视为单个整数,如何从单个字符串中获取字母和整数?
考虑到 2 个(或更多)整数可以在一起并且应该被视为单个整数,如何从单个字符串中获取字母和整数? 所以让我们取一个字符串“a2bc31d”...
Swift - 考虑到 2 个(或更多)整数可以在一起并且应该被视为单个整数,如何从单个字符串中获取字母和整数?
考虑到 2 个(或更多)整数可以在一起并且应该被视为单个整数,如何从单个字符串中获取字母和整数? 所以让我们取一个字符串“a2bc31d”...
在此输入图像描述 分支A和分支B拥有文件C,然后删除分支A上的C,然后整合到分支B,然后B上的C也被删除,然后,分支A重新添加文件C,然后整合到分支B
下面的程序显示了一个'int'值同时被输入和输出。但是,当我输入一个字符时,它会进入无限循环,显示先前输入的“int”值...
线程“AWT-EventQueue-0”中的异常java.lang.NumberFormatException:对于输入字符串:“”问题
我是Java新手(我们正在课堂上学习它),我们目前正在开发的一个简单项目是一个计算器。 “清除”应该清除所有内容,“添加”应该将两个数字相加......
我有一个矩形形状,它由以下参数组成: int16_t x; int16_t y; uint16_t w; uint16_t h; x 和 y 是 int16_t,因为矩形也可以从负正数开始...
目标: 减小整数数组的大小,如下所示:“[12, 1, -34, 55, 13, 341, 11, 56, 321, -3422, 1222, -4, 237]”,同时能够将其转换回来恢复到原来的状态。
使用 JDBC 检测 INTEGER 列的可靠方法 (Oracle 19c)
在我的 Oracle 19c 环境中,JDBC 驱动程序返回 java.sql.Types.NUMERIC 作为创建为 INTEGER 的列的列类型。 JDBC 元数据指示精度为 38,小数位数为 0....
无法理解部分代码的工作原理。代码应该找到所有数字并创建 int 或 float 值,如果给定字符串中第一个数字之前有“-”,则值应该带有“-”...
致命错误:未捕获类型错误:不支持的操作数类型:/Users/khushbuoswal/Desktop/Grocery_Store/cart.php:212中的字符串*字符串堆栈跟踪:#0 {main}抛出/Users/khushbuoswal/Desktop/
我需要帮助在 C++ 中解决这个问题,无需更改运算符和值,只需将括号放在正确的位置即可
我需要解决这个问题,无需更改任何内容,只需放入括号即可得到答案 10000 需要仅使用括号输出而不将任何内容更改为 10000 #包括 ...
如何解决 JavaScript 的 parseInt 八进制行为?
尝试在 JavaScript 中执行以下命令: parseInt('01'); //等于1 parseInt('02'); //等于2 parseInt('03'); //等于3 parseInt('04'); //等于4 parseInt('05'); //等于5 parseInt('06'); //...
我正在开发一个交易API(来自互动经纪商的activex),它有一个名为: void reqMktDataEx(inttickerId,IContract合约,字符串generalDetails,int快照) 问题是阿罗...
java:不兼容的类型:int无法转换为java.time.Duration
不幸的是,我收到错误消息“java:不兼容的类型:int无法转换为java.time.Duration”在我的login_page类中抛出。 谁能帮我解决这个问题? 电子...
VBA:如何确定数字是否为整数,即使它最初是作为双精度数接收的,比如说 3.0?
我的 isInteger 布尔值应该能够解析为以下布尔值: 2 --> 正确 3.0 --> 正确 2.3 --> 错误 2.9 --> 错误 4.0 --> 正确 5 --> 正确 我尝试使用...
给定一个十进制整数(例如 65),如何反转 Python 中的底层位?即以下操作: 65 → 01000001 → 10000010 → 130 看来这个任务可以分解为……
Java 中 int[] 、String[] 和 char[] 打印输出的区别
我的问题很简单。我知道输出,但我不知道为什么它们的输出不同。 首先,我想获得新创建的空数组的输出。我的编码如下: (https...
我目前正在尝试制作一个二进制插入程序,它读取一个随机数并将其插入到排序列表中,但每次我执行该程序时,它只返回一个充满 0 的列表我有这个专业...