java迭代器遍歷List、Set和Map

public  class test {
public static void main(String[]args)
{
    iteratorlist();
    iteratorset();
    iteratormap();
}
//**遍歷List**
*Iterator<String> it*   獲得String類型的迭代器對象
*list.iterator()*            返回一個list容器的對象
*Iterator<String> it=list.iterator()*   初始化迭代器,相當(dāng)于int i=0
*it.hasNext()*          判斷是否有下一個元素
*it.next()*                 返回當(dāng)前元素,并將游標(biāo)移至下一個元素

public static void iteratorlist()
{
    List<String> list=new ArrayList<>();
    list.add("aa");
    list.add("bb");
    list.add("cc");

    //初始化迭代器對象,相當(dāng)于int i=0;
    for(Iterator<String> it=list.iterator();it.hasNext();) //判斷條件,是否有下一個
    {
        String s=it.next();  //返回當(dāng)前元素,并且使得游標(biāo)指向下一個
        System.out.println(s);
    }
}

**//遍歷Set**
public static void iteratorset()
{
    Set<String> set= new HashSet<>();
    set.add("dd");
    set.add("ee");
    set.add("ff");

    for(Iterator<String> it=set.iterator(); it.hasNext();)
    {
        String s=it.next();
        System.out.println(s);
    }
}

**//遍歷Map**
*   map.entrySet()   Map鍵值對存放在節(jié)點里,相當(dāng)于放回一個鍵值對的集合*
    *Entry<Integer,String>    就相當(dāng)于返回的一個鍵值對的集合*
*   Set<Entry<Integer,String>>    相當(dāng)于將每一對集合放進(jìn)Set大集合里,Set的元素就是鍵值對的集合*
    *Iterator<Entry<Integer,String>>  it迭代器遍歷Set就相當(dāng)于遍歷里面的每一對集合*
*   Entry<Integer,String> s=it.next();   it.next()返回的是一個鍵值對集合*
*   s.getKey() 返回鍵值*
    *s.getValue()  返回鍵對應(yīng)的值*

public static void iteratormap()
{
    Map<Integer,String> map=new HashMap<>();
    map.put(1,"gg");
    map.put(2,"hh");
    map.put(3, "ii");
    **//第一種遍歷方式**
    Set<Entry<Integer,String>> ss=map.entrySet(); //map鍵值對是存放在節(jié)點里面,通過entrySet()獲得鍵值對
                                                //的集合
    for(Iterator<Entry<Integer,String>> it=ss.iterator();it.hasNext();)
    {
        Entry<Integer,String> s=it.next();
        System.out.println(s.getKey()+"+"+s.getValue());
    }

**  //第二種遍歷方式,相當(dāng)于遍歷集合**
Set<Integer> ss=map.keySet();  相當(dāng)于建立一個包含所以鍵的集合
再通過Map自帶方法map.get(key)返回鍵對應(yīng)的值,達(dá)到遍歷效果

    Set<Integer> ss=map.keySet();

    for(Iterator<Integer> it=ss.iterator();it.hasNext();)
    {
        Integer i=it.next();
        System.out.println(i+"+"+map.get(i));
    }

}

}

站在用戶的角度思考問題,與客戶深入溝通,找到平南網(wǎng)站設(shè)計與平南網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:做網(wǎng)站、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名與空間、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋平南地區(qū)。

網(wǎng)頁標(biāo)題:java迭代器遍歷List、Set和Map
新聞來源:http://muchs.cn/article10/iiddgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、面包屑導(dǎo)航網(wǎng)站策劃、外貿(mào)網(wǎng)站建設(shè)品牌網(wǎng)站建設(shè)網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化