队列中数据的移除问题
编程技术  /  houtizong 发布于 3年前   91
队列的移除一般都是使用的remov();都可以移除的,但是在昨天做线程移除的时候出现了点问题,没有将遍历出来的全部移除, 代码如下;
//
package com.Thread0715.com;import java.util.ArrayList;public class ThreadDemo {public static void main(String[] args) { //创建队列ArrayList<String> Demo = new ArrayList<String>();// LinkedBlockingQueue<String> link = new LinkedBlockingQueue<String>(); //添加8个数for (int i = 0; i < 8; i++) {Demo.add("元素" + i);}//输出下载队列中的数, 应该是8个System.out.println(">>>>..." + Demo.size());
移除队列中的数
//使用for将遍历出来的数移除队列for (int i = 0; i < Demo.size(); i++) {String num = Demo.remove(i);//输出移除队列中的数System.out.println(("移除的个数"+ num);}
使用for来遍历队列中的个数,和大小
//输出队列的大小System.out.println(">>>>..." + Demo.size());//打印队列中地址的个数System.out.println("<<<<<<" + Demo.toString());}}
输出结果:
>>>>...8
移除的个数 :元素0
移除的个数 :元素2
移除的个数 :元素4
移除的个数 :元素6
>>>>...4
<<<<<<[元素1, 元素3, 元素5, 元素7]
运行的结果:队列中值移除了4个元素,为什么会出现这个原因:
//使用for将遍历出来的数移除队列
for (int i = 0; i < Demo.size(); i++) {String num = Demo.remove(i);//输出移除队列中的数System.out.println(("移除的个数"+ num);}
每次移除一个后+1,所以只移除4个
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接