爪哇2博客
爪哇2博客

爪哇中Iterator和ListIterator的区别

在本文中,我们将看到Java中Iterator和ListIterator的区别。它们都用于遍历,但最好指出它们之间的差异。

迭代器与ListIterator:

参数
迭代器
ListIterator
遍历
迭代器可用于遍历列表,集合,队列
ListIterator只能用于遍历List。
行进方向

迭代器只能向前移动

ListIterator可以正向或反向遍历。
遍历时添加元素
使用Iterator遍历时不能添加元素。它将通过ConcurrentModificationException
您可以在使用ListIterator遍历时添加元素。
替换现有元素 
使用Iterator遍历时不能替换exisitng元素。
您可以在使用setIt(E e)的ListIterator进行遍历时替换exisitng元素。
访问索引
您无法使用Iterator访问索引
您可以通过nextIndex()或previousIndex方法使用ListIterator访问索引

例:

1. 国家.java 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
组织 .Arpit.爪哇2blog;
上市 国家 {
 
     名称;
     人口;
 
    上市 国家( 名称, 人口) {
        ();
        这个.名称 = 名称;
        这个.人口 = 人口;
    }
    上市 getName() {
        返回 名称;
    }
    上市 虚空 setName( 名称) {
        这个.名称 = 名称;
    }
    上市 getPopulation() {
        返回 人口;
    }
    上市 虚空 setPopulation( 人口) {
        这个.人口 = 人口;
    }
}
 

2. IterateListMain.java 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
组织 .Arpit.爪哇2blog;
 
进口 爪哇.实用程序.数组列表;
进口 爪哇.实用程序.迭代器;
进口 爪哇.实用程序.ListIterator;
 
上市 IterateListMain {
    / **
    * @作者Arpit Mandliya
     */
    上市 静态的 虚空 主要([] args) {
 
        国家 印度= 国家(“印度”,1000);
        国家 日本= 国家(“日本”,10000);
 
        国家 法国= 国家(“法国”,2000);
        国家 俄国= 国家(“俄国”,20000);
 
        //我们将在此列表上进行迭代并打印
        //国家名称
        数组列表 国家列表= 数组列表();
        国家列表.(印度);
        国家列表.(日本);
        国家列表.(法国);
        国家列表.(俄国);
 
        系统..打印(“ - ---------------------------”);
 
        //迭代器
        系统..打印(“使用迭代器进行迭代:”);
        迭代器 迭代器CountryLists= 国家列表.迭代器();
        (迭代器CountryLists.hasNext())
        {
            系统..打印(迭代器CountryLists.下一页().getName());
        }
 
        系统..打印(“ - ---------------------------”);
        //列出迭代器
 
        系统..打印(“使用ListIterator向前迭代:”);
        ListIterator listIteratorCountry= 国家列表.listIterator();
        (listIteratorCountry.hasNext())
        {
            系统..打印(listIteratorCountry.下一页().getName());
        }
 
        系统..打印(“ - ---------------------------”);
        系统..打印(“使用ListIterator向后迭代:”);
 
        (listIteratorCountry.hasPrevious())
        {
            系统..打印(listIteratorCountry.以前().getName());
        }
 
    }
}
 

当您运行上述程序时,将得到以下输出:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
- - - - - - - - - - - - - - -
反复进行 使用 迭代器 :
印度
日本
法国
俄国
- - - - - - - - - - - - - - -
反复进行 使用 ListIterator 前锋 方向 :
印度
日本
法国
俄国
- - - - - - - - - - - - - - -
反复进行 使用 ListIterator 落后 方向 :
俄国
法国
日本
印度
 

导入联系人

您可能还喜欢:

分享这个

作者

关注作者

相关文章

  • 10月02

    用Java中的值初始化ArrayList

    在本文中,我们将学习使用Java中的值初始化ArrayList。 数组列表是Java中List接口的实现类。它用于存储元素。它基于动态增长的阵列概念。我们可以通过几种方式用值初始化ArrayList。让’我们看到了其中一些…]

  • 3月17日

    爪哇 8中的PriorityQueue

    在本文中,我们将介绍Java 8 PriorityQueue。当应该根据对象的优先级处理对象时,在这种情况下,我们使用PriorityQueue。这是一种特殊的队列(也称为非绑定队列),可以根据元素的自然顺序或基于[…]

  • 10月06日

    2d Arraylist 爪哇示例

    在本文中,我们将看到如何在Java中创建2d Arraylist。创建2d Arraylist的最佳方法是在Java中创建列表的列表。 [crayon-601f0c8620ba3098924966 /]让’s创建一个程序来实现2d Arraylist 爪哇。 [crayon-601f0c8620ba8602727817 /]输出:list3中的第二个元素:List3_Str2 list1中的第三个元素:List1_Str3 list2中的第一个元素[…]

  • 04 May

    哈希图如何在Java中工作

    最常见的面试问题是<code>HashMap如何在Java中工作</code>, “HashMap的获取和放置方法如何在内部工作”。在这里,我试图通过一个简单的示例来解释内部功能。 [crayon-601f0c8631a07969222022-i /]是Java中最常用的集合之一。与其深入研究,不如从理论上入手,这样您就可以[…]

  • 10月21日

    如何在Java中对HashSet进行排序

    在本文中,我们将看到如何在Java中对HashSet进行排序。 哈希集是一个不按任何顺序存储元素的集合。您可能会遇到需要对HashSet进行排序的情况。排序HashSet的方法有很多种,我们将在这里看到两种方法。使用TreeSet可以使用[…]

  • 10月20日

    要设置的Java数组

    在本文中,我们将学习Java数组设置转换。有很多方法可以将数组转换为set。 1.使用Java 8’s Stream如果您使用的是Java 8,建议您使用此方法。 [crayon-601f0c8632416576151220 /]输出[John,Martin,Mary] 2.使用HashSet构造函数()我们可以直接调用HashSet‘s的java构造函数set […]

Comments

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

订阅我们的新闻

获取质量教程到您的收件箱。现在订阅。


成为朋友

©2020 爪哇2博客