当前位置: 首页 > news >正文

有部分网站打不开网站服务内容怎么写

有部分网站打不开,网站服务内容怎么写,网站会员注册系统下载,网站模板套餐迭代器的简单使用 在遍历容器时#xff0c;我们可以使用for循环或者是增强for循环#xff0c;但是不同的集合结构在遍历时#xff0c;我们要针对集合特点采取不同的方式#xff0c;比如List是链表#xff0c;我们可以直接当做数组处理#xff0c;但Map是Key—Value的形式…迭代器的简单使用   在遍历容器时我们可以使用for循环或者是增强for循环但是不同的集合结构在遍历时我们要针对集合特点采取不同的方式比如List是链表我们可以直接当做数组处理但Map是Key—Value的形式我们只有获取了键名才能去遍历集合内容。   很麻烦对吧   还好JDK为我们提供了一个接口-------Iterator(迭代器)迭代器为各种容器提供了公共的操作接口。这样使得对容器的遍历操作与其具体的底层实现相隔离达到解耦的效果。   查看Iterator的API我们得知该接口共有3个方法          查看API发现Collection实现了该接口,也就是说Collection的所有子实现类可使用Iterator的方法,同时在Collection中定义了一个方法iterator()     使用该方法iterator()要求容器返回一个Iterator对象。第一次调用Iterator的next()方法时它返回序列的第一个元素。注意iterator()方法是java.lang.Iterable接口,被Collection继承。   那我们如何使用迭代器呢   示例代码如下关键代码的解释说明已经在注释部分给出将不再做赘述。   示例代码 1 /**2 3 * VX:java8733 获取更多资源4 5 */6 7 public class TestIterator {8 9 10 11 public static void main(String[] args) { 12 13 ListString list new ArrayList(); 14 15 list.add(and); 16 17 list.add(try); 18 19 list.add(your); 20 21 list.add(best); 22 23 24 25 //使用迭代器,对集合Arraylist中的元素进行取出 26 27 //调用集合的方法iterator() 获取Iterator接口的实现类对象() 28 29 IteratorString itlist.iterator(); 30 31 System.out.println(list.iterator().getClass());//打印的内容是 class java.util.ArrayList$Itr 既是我们的接口的实现类对象 32 33 //接口实现类对象,调用方法hasNext()判断集合中是否有元素 34 35 boolean b it.hasNext(); 36 37 System.out.println(b); 38 39 //接口的实现类对象,调用方法next()取出集合中的元素 40 41 String s it.next(); 42 43 System.out.println(it.next()s); 44 45 while(it.hasNext()){ 46 47 /* 48 49 * 这里将不会输出and,因为我们调用一次hasNext,内部的指针就会指向下一个元素 50 51 */ 52 53 System.out.println(it.next()); 54 55 } 56 57 58 59 } 60 61 62 63 } 64 65   会遇到的问题(并发修改异常)    我们来设想如下的场景: 在list集合迭代元素中对元素进行判断一旦条件满足就添加一个新元素。代码如下 1 /**2 3 * VX:java8733 获取更多资源4 5 */6 7 8 9 ListString list2 new ArrayListString(); 10 11 list2.add(abc); 12 13 list2.add(def); 14 15 list2.add(g); 16 17 18 19 IteratorString itlist2.iterator(); 20 21 while(it.hasNext()){ 22 23 String strit.next(); 24 25 if(g.equals(str)){ 26 27 //该操作会导致程序异常: ConcurrentModificationException 28 29 List2.add(b); 30 31 } 32 33 } 34 35 System.out.println(list2);     这是为什么呢?我们会发现当我们使用迭代器遍历元素的时候 使用了集合方法修改了集合的长度,这是不允许的。程序抛出异常ConcurrentModificationException,这个异常指的是当方法检测到对象的并发修改但不允许这种修改时就会抛出此异常。       迭代器是依赖于集合而存在的在判断成功后集合的中新添加了元素而迭代器却不知道所以就报错了这个错叫并发修改异常。   那我们应该如何解决呢?   首先在迭代时尽量不要使用集合的方法操作元素。如果要在迭代时对元素操作。我们可以通过ListIterator迭代器来操作元素。   将上面的代码做如下的修改:     1 /**2 3 * VX:java8733 获取更多资源4 5 */6 7 8 9 ListIteratorString itlist2.listIterator(); 10 11 while(it.hasNext()){ 12 13 String strit.next(); 14 15 if(a.equals(str)){ 16 17 //子接口ListIterator包含add()方法 18 19 it.add(b); 20 21 } 22 23 }     转载于:https://www.cnblogs.com/lotus-wmm/p/8318129.html
http://www.pierceye.com/news/214241/

相关文章:

  • 汉中网站建设开发做微网站是订阅号还是服务号号
  • 中国商城网站建设h5响应式网站模板下载
  • 建设个商城网站需要多少钱网上商城系统平台官网
  • 软件开发与网站开发的区别最新源码
  • 电子商务网站建设策划中国网站建设公司排行
  • 网站的推广方式组合经验丰富的网站制作公司
  • 北京企业网站建设php制作公司网站首页
  • 保险网站建设网站 为何要 备案
  • 南宁网站设计可以找我wordpress 主题
  • 池州家居网站建设怎么样h5链接是什么意思
  • 网站添加站长统计代码凡科建站登录入口官方正版
  • 淮北做网站的公司有哪些手机网站设计只选亿企邦
  • 网站服务器打不开爱站工具网
  • php网站接口开发wordpress添加作者
  • 网站建设漂亮的模板创新网站建设工作
  • 国内做服装的网站有哪些方面wordpress邮件订阅
  • 建立个人网站主题安徽省建设厅网站打不开
  • 做互联网小程序 和网站有没有前景广州网站制作教程
  • 新网网站内部优化wordpress菜单图标
  • 深圳市龙华区住房和建设局网站网站开发连接数据库
  • 做张家界旅游网站多少钱做网站的步骤 优帮云
  • 怎么建立一个好公司网站网站模版参考
  • 成都大型网站设计公司怎么快速建设小型外贸网站
  • 建设工程规范在哪个网站发布河南网络推广培训
  • 深圳宝安上市公司网站建设报价石家庄教育学会网站建设
  • 上海 专业网站建设网络推广公司收费标准
  • 网站建设维护的知识wordpress调用多张产品图片
  • 网站的静态资源服务器怎么做上海加盟网站建设
  • 网站数据库如何做小游戏网页版入口
  • 做php网站教程视频国产长尾关键词拘挖掘