gpt4 book ai didi

java - 分配为对象的属性时不保留数组元素

转载 作者:行者123 更新时间:2023-12-02 12:02:50 25 4
gpt4 key购买 nike

我创建了一个数组的实例,shortFacilitiesArray,通过添加其他值来修改数组中的一组现有值。但是,当我将实例数组设置为对象的属性时,所有数据都会丢失。我的代码主要如下:

if(hotelMap.containsKey(hotelID)) {

JSONArray shortFacilitiesJSON = jsonObj.getJSONArray("shortFacilities");
String[] shortFacilitiesArray = (hotelMap.get(hotelID)).getFacilitiesShort();
shortFacilitiesArray = new String[shortFacilitiesJSON.length()];
for (int i=0;i<shortFacilitiesJSON.length();i++) {
shortFacilitiesArray[i] = shortFacilitiesJSON.getString(i);
}

hotelMap.get(hotelID).setFacilitiesShort(shortFacilitiesArray);
}

例如:如果我的 ShortFacilitiesArray 是 {"parking", "hairdryer"},设置为map中对象的数组后会输出null,null。

最佳答案

如果没有额外的上下文,我的赌注是 ShortFacilitiesJson.GetString() 可能会返回 null,因此将最初填充的数组设置为 null 数组。您可以通过测试 ShortFacilitiesArray 以字符串开头的场景来验证这一点。在这种情况下,运行程序后,shortFacilitiesArray 应包含除第一个元素之外的所有空值,第一个元素应与之前的字符串相同。

关于java - 分配为对象的属性时不保留数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47124439/

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