lizardll |
| 分享创造 • lizardll 开发一个可以在旧手机上跑的 homeassistant 服务端 app,有前途嘛 2023 年 9 月 8 日 • 最后回复来自 Flobit | 10 |
| Apple • lizardll iPhone11 升级 ios15 续航变好了 2021 年 10 月 4 日 • 最后回复来自 clavichord93 | 14 |
| WATCH • lizardll wwdc 大家没提到但是我很喜欢的一个 feature 2021 年 6 月 8 日 • 最后回复来自 MX123 | 1 |
| Apple • lizardll 大家 IOS 上的提醒事项,基于地理位置的提醒有用吗? 2019 年 12 月 13 日 • 最后回复来自 wclebb | 14 |
| 问与答 • lizardll 哈罗单车官方有人吗,被 play protect 报毒了 2018 年 8 月 14 日 |
lizardll 最近回复了
| 回复了 yoloMiss 创建的主题 › 大哥们,给菜鸟想想办法吧,求求了。2023 年 11 月 5 日 |
httpReponse res = httpUtil.get(url);
String resStr = res.getBody();
JSONArray arrayData = JSONArray.parse(resStr);
我是建议你用迭代器写
Iterator<Object> it = arrayData.iterator();
while (it.hasNext()) {
JSONObject jsonData = (JSONObject) it.next();
if (jsonData.has("key")) {
it.remove();
}
}
String resStr = res.getBody();
JSONArray arrayData = JSONArray.parse(resStr);
我是建议你用迭代器写
Iterator<Object> it = arrayData.iterator();
while (it.hasNext()) {
JSONObject jsonData = (JSONObject) it.next();
if (jsonData.has("key")) {
it.remove();
}
}
| 回复了 yoloMiss 创建的主题 › 大哥们,给菜鸟想想办法吧,求求了。2023 年 11 月 5 日 |
这不是问问 gpt 就能解决
| 回复了 yoloMiss 创建的主题 › 大哥们,给菜鸟想想办法吧,求求了。2023 年 11 月 5 日 |
这段代码中有几个明显的问题:
1. **循环变量语法错误**:
```java
for(int i=0,i<arrayData.size,i++)
```
应该修改为:
```java
for(int i=0; i<arrayData.size(); i++)
```
2. **删除 JSONArray 中的元素问题**: 当你从`JSONArray`中删除元素时,该数组的大小会改变,这可能会导致你错过某些元素或者遇到`IndexOutOfBoundsException`。一种解决方法是反向遍历这个数组。
3. **`JSONObject.contains`**:
根据我的最后的知识,`JSONObject`并没有`contains`方法。如果你想检查一个`JSONObject`是否包含某个 key ,你应该使用`has`方法:
```java
if(jsonData.has("key"))
```
4. **丢失分号**:
```java
jsonData.remove(i)
```
应该有一个分号:
```java
jsonData.remove(i);
```
5. **删除元素的方法不正确**:
使用`jsonData.remove(i)`是错误的。这将试图从`JSONObject`中删除键为`i`的项,而不是从`JSONArray`中删除索引为`i`的项。你应该在`arrayData`上调用`remove`方法,如`arrayData.remove(i)`。
考虑上述问题,修改后的代码如下:
```java
httpReponse res = httpUtil.get(url);
String resStr = res.getBody();
JSONArray arrayData = JSONArray.parse(resStr);
for(int i = arrayData.size() - 1; i >= 0; i--) {
JSONObject jsonData = arrayData.getJSONObject(i);
if(jsonData.has("key")) {
arrayData.remove(i);
}
}
```
请确保你的代码环境中的库方法与我的建议相匹配,不同的库可能有不同的方法名称和功能。
1. **循环变量语法错误**:
```java
for(int i=0,i<arrayData.size,i++)
```
应该修改为:
```java
for(int i=0; i<arrayData.size(); i++)
```
2. **删除 JSONArray 中的元素问题**: 当你从`JSONArray`中删除元素时,该数组的大小会改变,这可能会导致你错过某些元素或者遇到`IndexOutOfBoundsException`。一种解决方法是反向遍历这个数组。
3. **`JSONObject.contains`**:
根据我的最后的知识,`JSONObject`并没有`contains`方法。如果你想检查一个`JSONObject`是否包含某个 key ,你应该使用`has`方法:
```java
if(jsonData.has("key"))
```
4. **丢失分号**:
```java
jsonData.remove(i)
```
应该有一个分号:
```java
jsonData.remove(i);
```
5. **删除元素的方法不正确**:
使用`jsonData.remove(i)`是错误的。这将试图从`JSONObject`中删除键为`i`的项,而不是从`JSONArray`中删除索引为`i`的项。你应该在`arrayData`上调用`remove`方法,如`arrayData.remove(i)`。
考虑上述问题,修改后的代码如下:
```java
httpReponse res = httpUtil.get(url);
String resStr = res.getBody();
JSONArray arrayData = JSONArray.parse(resStr);
for(int i = arrayData.size() - 1; i >= 0; i--) {
JSONObject jsonData = arrayData.getJSONObject(i);
if(jsonData.has("key")) {
arrayData.remove(i);
}
}
```
请确保你的代码环境中的库方法与我的建议相匹配,不同的库可能有不同的方法名称和功能。
| 回复了 lizardll 创建的主题 › 开发一个可以在旧手机上跑的 homeassistant 服务端 app,有前途嘛2023 年 9 月 8 日 |
@5had0w 我用过,类似的原理,问题就是非计算机相关行业用户搞不定
| 回复了 lizardll 创建的主题 › 开发一个可以在旧手机上跑的 homeassistant 服务端 app,有前途嘛2023 年 9 月 8 日 |
@dangyuluo 这个分析页面不错啊,感谢。不过 addon 都是可以手动安装的,支持一些常用的还是没问题的,比如我自己安装了 hacs ,可以支持米家插件(当然一个个支持工作量很大就是了😂
| 回复了 whasyt 创建的主题 › 有没有人和我一样,隔一段时间就想把电子产品(手机/ iPad /手表....)刷机/恢复出厂设置?2022 年 12 月 21 日 |
说明你还是太闲了👀
| 回复了 Rookie01 创建的主题 › iOS 如何彻底删除 App 的数据?(已越狱)2022 年 7 月 31 日 |
手机恢复出厂设置算不算办法
| 回复了 uclort 创建的主题 › iOS 15 日历不显示新添加的生日。2022 年 3 月 12 日 |
| 回复了 37Y37 创建的主题 › 新年礼物2022 年 2 月 3 日 |
这也太棒了吧,祝福楼主啊