2 u011185812 u011185812 于 2016.03.28 22:30 提问

JAVA的jsoup删除元素结点的问题

是个奇怪的问题,revision是个arraylist数组类型,然后我在这个循环语句中:

for (int k=i+1; k<=j; k++){
//revision.get(k).remove();
//System.out.println(revision.get(k));
}

如果是System.out.println(revision.get(k));的话,是能够得到我想要的每个Element元素结点的所有信息。
然而如果执行revision.get(k).remove();的话 就会在这一行报这样的错:
Exception in thread "main" java.lang.IllegalArgumentException: Object must not be null
不是很明白是怎么回事,我处理另一个相同结构的xml文件都是没有问题的。

3个回答

devmiao
devmiao   Ds   Rxr 2016.03.28 23:44
u011185812
u011185812 谢谢,可是这个对我的问题没什么用,这个remove应该是没问题的,因为我在另一个xml文件里是执行成功了的。
一年多之前 回复
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.29 08:18

你在for循环中,一边遍历,一边remove这个行为不太妥当。试试先记录下待删除的元素,然后再remove。
你是想输出i+1到j之间所有的记录吗?

u011185812
u011185812 i跟j的值是确定的,我是想删除revision数组中编号为i+1到j之间的所有元素节点,好像也就只能这样遍历去删除这些DOM节点吧?主要是现在要删除的元素也是确定了的,因为要删除所有符合条件的revision元素,所以我也只能循环删除。。
一年多之前 回复
CSDNXIAOD
CSDNXIAOD   2016.03.30 18:01

Java集合删除元素可能出现的问题
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!