Java JSONArray for循环 remove成员的一个好算法
开发者技术变现资源聚集地
https://www.baiydu.com
好久没写日志了,今天来写一个,JSONArry fro循环判断value,移除不需要的,不需再将JSONArry再次转换成 map或list。
JSONArray移除成员只能通过for遍历取成员,判断后remove(index),这样很明显是不行的,除非移除的成员只有1个,否则再你移除后for循环的遍历次数就被打乱了。你就会移除到不需要移除的成员。处理这个问题的方式其实很多的,比如创建list范型map将json遍历后一个一个弄到他们里面去......
我这里说的方式不需要创建LIST,MAP 直接就是用 remove和原本的JSONArry实现,并且效率应该是最高的。
parameterArray=“[{"boundingBox":"29,28,401,29,399,85,27,84","words":[{"boundingBox":"29,28,70,29,68,85,27,84","word":"好"},{"boundingBox":"84,29,111,29,109,85,82,85","word":"友"},{"boundingBox":"125,30,401,29,399,85,123,86","word":"137*8288"}],"text":"好友137*8288"},{"boundingBox":"799,25,1018,29,1016,91,797,87","words":[{"boundingBox":"799,25,931,25,929,87,797,87","word":"10,090"},{"boundingBox":"945,25,960,25,958,87,943,87","word":"金"},{"boundingBox":"975,25,1018,29,1016,91,973,87","word":"币"}],"text":"10,090金币"},{"boundingBox":"25,123,279,127,277,174,23,170","words":[{"boundingBox":"36,124,71,127,69,174,34,171","word":"02"},{"boundingBox":"82,127,94,128,92,175,80,174","word":"月"},{"boundingBox":"106,128,140,128,138,175,104,175","word":"21"},{"boundingBox":"152,129,164,128,162,175,150,176","word":"日"},{"boundingBox":"187,128,279,127,277,174,185,175","word":"18:50"}],"text":"02月21日 18:50"},{"boundingBox":"621,123,1017,124,1015,176,619,175","words":[{"boundingBox":"633,122,659,123,657,175,631,174","word":"等"},{"boundingBox":"672,124,697,124,695,176,670,176","word":"待"},{"boundingBox":"710,123,723,124,721,176,708,175","word":"发"},{"boundingBox":"736,124,761,124,759,176,734,176","word":"放"},{"boundingBox":"774,124,800,124,798,176,772,176","word":"奖"},{"boundingBox":"813,124,825,124,823,176,811,176","word":"励"},{"boundingBox":"838,124,928,124,926,176,836,176","word":"0"},{"boundingBox":"941,124,966,124,964,176,939,176","word":"市"},{"boundingBox":"979,124,1017,124,1015,176,977,176","word":"市"}],"text":"等待发放奖励0市市"}]”;
int tempLowTimes=-1;
for(int k=0;k< parameterArray.length();k++)
{ JSONObject singlexx= parameterArray.getJSONObject(k);
String dltTxt=singlexx.getString("text").replace(" ", "");
if (dltTxt.contains("等待发"))
{
parameterArray.remove(k);
k=tempLowTimes;
continue; }
if (dltTxt.contains("月")&&dltTxt.contains("日"))
{
parameterArray.remove(k);
k=tempLowTimes;
continue;
}
tempLowTimes=tempLowTimes+1;
}
本人做的一款androidApp, 下载量已经有2000多万,各种当前热门的网络手机奖励红包全部集成,另外还有热门电影和淘宝高额优惠券!很适合各类型的用户。

Java JSONArray for循环 remove成员的一个好算法的更多相关文章
- Java中ArrayList循环遍历并删除元素的陷阱
ava中的ArrayList循环遍历并且删除元素时经常不小心掉坑里,昨天又碰到了,感觉有必要单独写篇文章记一下. 先写个测试代码: import java.util.ArrayList; public ...
- 自己根据java的LinkedList源码编写的一个简单的LinkedList实现
自己实现了一个简单的LinkedList /** * Create by andy on 2018-07-03 11:44 * 根据 {@link java.util.LinkedList}源码 写了 ...
- java基础3_循环语句,数组
java中的循环: Java中提供了3中循环结构: while do-while for ① 循环结构的作用? 可以不断重复执行循环结构中的代码: ② 上面的3个循环结构功能都是一样的,只是结构 ...
- java中for循环的6种写法
有些写法上的说明写的过于武断,可能有很多不当之处,仅供参考. package ForLoop; import java.util.ArrayList; import java.util.Itera ...
- 【Java SE】利用Java的for循环加random制作小学试卷
前期介绍:很多同学以为学习一门编程语言,一定要学到很高深的时候才可以做项目,其实不然,很多时候我们不需要学到面向对象的思想,就可以从事一些小项目的开发,来增加自己对开发的热情,比如现在我就可以利用Ja ...
- java变量和作用域以及成员变量的默认初始化
Java中的变量有成员变量和局部变量,定义在类中方法之外的变量成为成员变量或者成员字段(域),表示一个类所具有的属性,定义为类的成员变量的变量的作用于是整个类,该变量在定义的时候不需要初始化,在使用前 ...
- Java中for_each循环的使用
最近在看一些和安卓相关的书籍,看到了for_each这种循环结构,这是为了简化java的for循环而改造的一种方便使用的格式. 格式如下: for(数据类型 变量:集合) 语句块 接下来看一个例程: ...
- JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识
JAVA WEB快速入门系列之前的相关文章如下:(文章全部本人[梦在旅途原创],文中内容可能部份图片.代码参照网上资源) 第一篇:JAVA WEB快速入门之环境搭建 第二篇:JAVA WEB快速入门之 ...
- Java 控制语句:循环、条件判断
基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 程序设计中的控制语句主要有三种:顺序.分支和循环.我们每天写的代码,除了业务相关,里面会包含大量的控制语句.但是控制语句的基本使用,是否有些坑 ...
随机推荐
- pywin32安装教程
下载 pywin32-224-cp37-cp37m-win32.whl 放在 Scripts 目录下,然后cmd 安装 pip install pypiwin32 即可成功 此次安装成功对应的pyth ...
- 基于MGR+Atlas的读写分离尝试,以及MGR+Keepalived+Atlas自动故障转移+读写分离设想
目的是尝试altas的读写分离,现有一套搭建好做测试的MGR(单主),于是就腿搓绳,在MGR基础上搭建altas. 复制环境准备 读写分离理论上讲,跟复制模式没有关系,atlas负责的是重定向读写,至 ...
- pytorch1.0 安装执行后报错ImportError: No module named future.utils
File "/usr/local/lib/python2.7/dist-packages/caffe2/python/utils.py", line 10, in <modu ...
- 安装oracle [INS-32025] 所选安装与指定 Oracle 主目录中已安装的软件冲突” 的问题
删除C:\Program Files (x86)\Oracle\Inventory\下的Oracle文件夹即可解决问题
- 深入理解C++11【4】
[深入理解C++11[4]] 1.基于范围的 for 循环 C++98 中需要告诉编译器循环体界面范围.如for,或stl 中的for_each: int main() { ] = { , , , , ...
- Python学习—框架篇之初识Django
什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于所有的W ...
- 深入Dockerfile(一): 语法指南(转)
最近在学习K8S,发现这两篇文章还不错,转了过来 docker官方文档Dockerfile reference的笔记. 一.机制 1.1 构建 docker构建一个镜像,需要: Dockerfile文 ...
- Beautiful Numbers(牛客网)
链接:https://ac.nowcoder.com/acm/problem/17385来源:牛客网 题目描述 NIBGNAUK is an odd boy and his taste is stra ...
- ubuntu18.04微信小程序学习笔记
安装微信小程序开发工具 安装 https://github.com/cytle/wechat_web_devtools 创建快捷方式 sudo nautilus //在/usr/share/appli ...
- Spring整合quartz关闭,关闭Tomcat Servlet容器时内存泄漏
出错信息 22-Sep-2017 06:19:51.064 WARNING [main] org.apache.catalina.loader.WebappClassLoaderBase.clearR ...
