㈠ java的List集合迭代器
是刪除了的,親。是你弄錯 了,你對比一下我給你寫的代碼,你就知道你的問題出在哪了,我只加了一句話。
importjava.util.ArrayList;
importjava.util.Iterator;
importjava.util.List;
publicclassArrayListTest
{
publicstaticvoidmain(String[]args)
{
List<Object>list=newArrayList<Object>();
list.add((byte)56);
list.add((short)5656);
list.add(565656);
list.add(56565656L);
Iteratorit=list.iterator();
while(it.hasNext())
{
Objectobj=it.next();
if(objinstanceofInteger)
{
it.remove();
//刪除成功以後就不應該再輸出這個刪除的值,明白嗎?
continue;
}
System.out.println(obj);
}
}
}
有什麼問題你都可以追問我,沒問題,望採納,謝謝
㈡ 在Java中的迭代器有什麼作用啊
由於Java中數據容器眾多,而對數據容器的操作在很多時候都具有極大的共性,於是Java採用了迭代器為各種容器提供公共的操作介面。使用Java的迭代器iterator可以使得對容器的遍歷操作完全與其底層相隔離,可以到達極好的解耦效果。下面是一個使用迭代器遍歷一個序列化和非序列化容器的例子。
mport java.util.*;
publicclass TestIterator {
public static void main(String[] args) {
//創建一個list 它是一個序列化的數據
List list=new ArrayList();
//創建一個map,它是一個非序列化的數據
Map map=new HashMap();
for(int i=0;i<10;i++){
//向容器中添加數據
list.add(new String("list"+i) );
map.put(i, new String("map"+i));
}
//序列化了的數據創建迭代器。
Iterator iterList= list.iterator();//List介面實現了Iterable介面
//進行遍歷 如果容器中有下一個數據,就獲取下一個數據並列印出來
while(iterList.hasNext()){
String strList=(String)iterList.next();
System.out.println(strList.toString());
}
//創建非序列化數據的迭代器,要先將其序列化
Iterator iterMap=map.entrySet().iterator();
//進行遍歷 如果容器中有下一個數據,就獲取下一個數據並列印出來
while(iterMap.hasNext()){
Map.Entry strMap=(Map.Entry)iterMap.next();
System.out.println(strMap.getValue());
}
}
}
這些都是一些基礎的Java知識,在秒秒學的網站上查看資料。
㈢ 如何在java中實現List集合的遍歷
java中實現List集合的遍歷有三種方法:
for(Stringattribute:list){
System.out.println(attribute);
}
for(inti=0;i<list.size();i++){
system.out.println(list.get(i));
}
Iteratorit=list.iterator();
while(it.hasNext()){
System.ou.println(it.next);
}
㈣ java 中集合已經有增刪改查了為什麼還要迭代器
您好,提問者:
迭代器的神奇之處在於:可以迭代很多,比如Set、List介面下的類。
雖然List有.get方法,但是遠遠不能滿足需求,對於面向抽象來講,這些集合框架的類既然都可以存儲,那麼肯定都可以迭代,所以抽取出來Iterator。
另外List迭代過程中有增刪修改的話可以使用ListIterator介面,也是Iterator介面的子介面。。。。
㈤ java list 迭代(遞歸)
要用遞歸
public static void showList(List<Menu> allMenu) {
if (allMenu == null || allMenu.size() == 0 ) {
return ;
} else {
Iterator<Menu> iter = allMenu.iterator() ;
while(iter.hasNext()) {
Menu m = iter.next();
// 列印信息或將信息保存到一個公共集合中
System.out.println(m.getMenuId());
showList(m.getChilds());
}
}
}
public static void main(String[] args) {
// 把所有內容的集合傳入
showList(all);
}