gpt4 book ai didi

java - 如何将 HashMap 插入到对象数组中

转载 作者:行者123 更新时间:2023-12-01 17:47:30 25 4
gpt4 key购买 nike

有人可以解释一下为什么会这样吗:

Map[] IEXDivMap = new Map[IEXJsonArray.length()];

for (int i = 0; i < IEXJsonArray.length(); i++) {
IEXDivMap[i] = new HashMap();
JSONObject IEXJsonObject = IEXJsonArray.getJSONObject(i);

IEXDivMap[i].put("exDate",IEXJsonObject.getString("exDate"));
IEXDivMap[i].put("amount",IEXJsonObject.getString("amount"));

}

但这不是:

Object[] IEXDivMap = new Object[IEXJsonArray.length()];

for (int i = 0; i < IEXJsonArray.length(); i++) {
IEXDivMap[i] = new HashMap();
JSONObject IEXJsonObject = IEXJsonArray.getJSONObject(i);

IEXDivMap[i].put("exDate",IEXJsonObject.getString("exDate"));
IEXDivMap[i].put("amount",IEXJsonObject.getString("amount"));

}

为什么我不能有一个对象数组,每个对象都是一个 HashMap ?

最佳答案

您必须将对象转换为 map

Object[] IEXDivMap = new Object[IEXJsonArray.length()];

for (int i = 0; i < IEXJsonArray.length(); i++) {
IEXDivMap[i] = new HashMap();
JSONObject IEXJsonObject = IEXJsonArray.getJSONObject(i);

IEXDivMap[i].put("exDate",IEXJsonObject.getString("exDate")); // this fails
IEXDivMap[i].put("amount",IEXJsonObject.getString("amount"));

((Map) IEXDivMap[i]).put("exDate",IEXJsonObject.getString("exDate")); // this works
((HashMap) IEXDivMap[i]).put("exDate",IEXJsonObject.getString("exDate")); // this works

}

Object 没有 put 方法。

另请参阅this关于选角的问题。

关于java - 如何将 HashMap 插入到对象数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53449613/

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