今天朋友說寫了個死循環 我看了看以爲不會呀code
List list = new ArrayList(); list.add("aaa"); list.add("bbb"); Iterator ite = list.iterator(); while(ite.hasNext()){ System.out.println(------); }
她說確實是死循環 ,我就仔細看了一下,發現while的條件不太對勁, 官方給出 hasNext():若是至少有一個元素返回true,不然假 next():返回下一個元素並將迭代器向前推動圖片
也就是hasNext(),並不會向下一個元素移動,因此以上程序會一直返回true,陷入死循環 只要在while的方法體裏面加入next(),遊標迴向下個元素推動,到最後一個元素之後就會跳出。it