android - 输出形式 ArrayMap 等于 null
问题描述
我正在编写一个解析器来在我的手机上打印一个文件 json。我包含一个 ArrayMap 来保存从文件接收到的数据。我的问题是,当我必须在 TextView 中打印数据时,它返回 null。我在我的问题下包含了代码。
ArrayMap<Integer, String> Array = new ArrayMap<>();
for(int i=0; i < arr.length(); i++){
JSONObject jsonPart = arr.getJSONObject(i);
Array.put("Main", jsonPart.getString("main"));
Array.put("Description", jsonPart.getString("description"));
Array.put("Id", jsonPart.getString("id"));
TxT.append(Txt.getText() + Array.get(i));
}
解决方案
首先你不应该使用关键字数组,因为它是保留词,你可以将它更改为类似 jsonMap 的东西。ArrayMap<String, String>
如果您在关键元素中插入字符串,则应该使用。因此,您的代码将如下所示:
ArrayMap<String, String> jsonMap = new ArrayMap<>();
for(int i=0; i<arr.length(); i++){
JSONObject jsonPart = arr.getJSONObject(i);
jsonMap.put("Main", jsonPart.getString("main"));
jsonMap.put("Description", jsonPart.getString("description"));
jsonMap.put("Id", jsonPart.getString("id"));
TxT.append(TxT.getText() + jsonMap.get(i));
}
推荐阅读
- reactjs - 反应状态:两次更改状态是否也保证触发两次渲染?
- amazon-web-services - 完全验证 SES 身份时的 AWS SNS 通知?
- django - Celery Beat 如何计算 datetime.now() 和下一个计划的定期任务 django 之间的差异
- javascript - redux 工具包状态重置
- ffmpeg - FFMPEG 没有声音
- elasticsearch - 从 6.5.4 更新到 7.13.2 后,Kibana 服务器尚未准备好
- ios - SwiftUI:iPhone 上 3 列布局的透明导航栏
- recursion - n = 656 Nth Fibonacci Number 的错误答案使用 Dynamic Programmin
- netbeans - 在 NetBeans 12.4 中安装 J2ME 插件
- c++ - 有人可以解释一下如何为指针向量动态分配内存吗