`

List循环输出时删除元素

阅读更多
List<String> lists = new ArrayList<String>();
		lists.add("ad");
		lists.add("dv");
		lists.add("dvs");
		lists.add("adf");
for(int i=0;i<lists.size();i++)
        {
			String s=lists.get(i);
			if(s.equals("ad"))
        	{
				lists.remove(s);			
        	}
System.out.println(s);	
        }

结果
dvs
adf

因为你在lists.remove(s);的时候,ad被删除了,dv放在0的位置,而你for循环的i的值等于1了,打印的是lists(1),这个时候lists(1)值是dvs

解决:
1.可以这样:
for(int i=0;i<lists.size();i++)
        {
String s=lists.get(i);
if(!s.equals("ad"))
        {
    System.out.println(s);
        }
        }

结果是
dv
dvs
adf
2.
for(int i=0;i<lists.size();i++)
        {
String s=lists.get(i);
if(s.equals("ad"))
        {
lists.remove(s);
i=i-1;
continue;
        }
        System.out.println(s);
        }
结果是
dv
dvs
adf
分享到:
评论

相关推荐

    python list删除元素时要注意的坑点分享

    我们直接先给出输出与预期不同的代码 In[28]: a = [1,2,3,4,5,6...同理,使用list.pop()函数删除指定元素的时候,也会出现上述情况,如: In[33]: a = [1,2,3,4,5,6] In[34]: for index, value in enumerate(a): ...

    single-linked-list2.zip_linkedlist初始化_single_single-linked-list2

    初始化循环单链表H; 依次采用尾插法插入a,b,c,d,e元素; 输出循环单链表H; 输出循环单链表H长度; 判断循环单链表H是否为空; 输出循环单链表H的第三个元素;...删除循环单链表H的第三个元素; 输出循环单链表H;

    Python如何在循环内使用list.remove()

    #按要求是把'0'都删掉的,输出结果是['1', '2', '3', '0'] ?? 首先,remove(x) 移除的是序列首次碰到的元素x 理解: 遍历列表,item每一次都会变化,可以想象有一个指针指向后一个元素,指针是递增的,从头元素到...

    java面试宝典

    16、在JAVA 中,如何跳出当前的多重嵌套循环? 9 17、构造器Constructor 是否可被override? 9 18、两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对? 9 19、是否可以继承String 类? 9 ...

    链表实验报告.docx

    int val) 插入节点 定义删除整个链表函数 DeleteTheList 定义删除链表元素函数删除链表中的第pos节点DeleteList(PNode List, int pos) 删除节点 声明函数 主函数 main 创建链表函数定义 CreateList 定义链表遍历...

    基于python的TXT解析器 parser 包含各个版本的代码 见注释

    添加索引:便利时用了for enumerate()循环,这样便利时可以在循环时,自动为每个元素生成索引 CA组合识别:在识别到bandEUTRA-r10时,增加一个判断if datalist1[index-4].startswith(),如果bandEUTRA-r10的往上第...

    LeetCode判断字符串是否循环-DataStructure-and-Algorithm:越来越多

    LeetCode判断字符串是否循环 ...删除链表中的相同元素 0141 Easy 判断是否是循环链表 0206 Easy Linked list 0225 Easy Stack、queue 0232 Easy Stack、queue 0344 Easy string 0496 Easy Vector 053

    数据结构C严蔚敏版_全注释源码_线性表队列栈监视哨查找折半直接插入排序冒泡快速选择

    // 若栈不空,则删除S的栈顶元素,用e返回其值,并返回OK;否则返回ERROR Status Pop(SqStack &S, SElemType &e) { if (S.top == S.base) //栈顶=栈底表示空栈,如果空栈,报错 return ERROR; e = *--S.top; ...

    freemarker总结

    此外,迭代集合对象时,还包含两个特殊的循环变量: item_index:当前变量的索引值 item_has_next:是否存在下一个对象 也可以使用指令跳出迭代 例子如下: &lt;#list ["星期一", "星期二", "星期三", "星期四", "星期五...

    《数据结构 1800题》

    8. 一个算法具有 5个特性: (1)有穷性 、 (2)确定性 、 (3)可行性 ,有零个或多个输入、有一个或多个输出。 《数据结构 1800题》 9.已知如下程序段 FOR i:= n DOWNTO 1 DO {语句 1} BEGIN x:=x+1;...

    数据结构算法实现(严蔚敏版配套实现程序)

    范例1-44 单循环链表中元素的删除 101 ∷相关函数:ListDelete_CL函数 1.3.14 单循环链表的清除和销毁 107 范例1-45 单循环链表的清除和销毁 107 ∷相关函数:DestroyList函数 1.3.15 仅设表尾指针循环链表的合并 ...

    数据结构 严蔚敏 代码

    范例1-44 单循环链表中元素的删除 101 ∷相关函数:ListDelete_CL函数 1.3.14 单循环链表的清除和销毁 107 范例1-45 单循环链表的清除和销毁 107 ∷相关函数:DestroyList函数 1.3.15 仅设表尾指针循环链表的合并 ...

    数据结构(王)c元代码

    范例1-44 单循环链表中元素的删除 101 ∷相关函数:ListDelete_CL函数 1.3.14 单循环链表的清除和销毁 107 范例1-45 单循环链表的清除和销毁 107 ∷相关函数:DestroyList函数 1.3.15 仅设表尾指针循环链表的合并 ...

    数据结构算法实现(严蔚敏版配套实现程序)

    范例1-44 单循环链表中元素的删除 101 ∷相关函数:ListDelete_CL函数 1.3.14 单循环链表的清除和销毁 107 范例1-45 单循环链表的清除和销毁 107 ∷相关函数:DestroyList函数 1.3.15 仅设表尾指针循环链表的合并 ...

    deadlist-cat

    删除重复项客观的编写从数组中删除重复元素的方法。... 限制不使用任何内置数据结构( Collection , List , Map ) 操作应是如果输入相同,则该方法的输出应始终相同,而不管该方法被调用了多少次。remov

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    说明:将sql*plus屏幕中的内容输出到指定的文件 用法:开始印刷-&gt;spool 文件名 结束印刷-&gt;spool off 列子: 文件内容 9. 显示宽度 (linesize) 说明:设置显示行的宽度,默认是80个字符 用法:set linesize 120 ...

    Linux高级bash编程

    每个[list]元素带两个参数的for循环 10-3. 文件信息:对包含在变量中的文件列表进行操作 10-4. 在for循环中操作文件 10-5. 在for循环中省略[list] 10-6. 使用命令替换来产生for循环的[list] 10-7. 对于二进制文件的...

    Advanced Bash-Scripting Guide <>

    每个[list]元素带两个参数的for 循环 10-3. 文件信息:对包含在变量中的文件列表进行操作 10-4. 在for 循环中操作文件 10-5. 在for 循环中省略[list] 10-6. 使用命令替换来产生for 循环的[list] 10-7. 对于二进制...

    #Python 学习打卡——列表#

    列表是一种有序的集合,可以随时添加和删除其中的元素,其长度是可变的,在Python中,使用[ ]来表示一个列表,列表中的元素可以是int型,str型,也可以是int型和str型的混合型。比如,列出喜欢吃的水果可以用一个...

    java遍历特例

    另外 我们可以先把hashMap 转为集合Collection,再迭代输出,不过得到的对象 //方法一: 用entrySet() Java代码 Iterator it = emails.entrySet().iterator(); while(it.hasNext()){ Map.Entry m=(Map...

Global site tag (gtag.js) - Google Analytics