精华内容
下载资源
问答
  • 迭代器 Iterator 是什么

    万次阅读 2019-05-07 10:49:26
    迭代器 Iterator 是什么? 首先说一下迭代器模式,它是 Java 中常用的设计模式之一。用于顺序访问集合对象的元素,无需知道集合对象的底层实现。 Iterator 是可以遍历集合的对象,为各种容器提供了公共的操作...

    迭代器 Iterator 是什么?

    首先说一下迭代器模式,它是 Java 中常用的设计模式之一。用于顺序访问集合对象的元素,无需知道集合对象的底层实现。

     

    Iterator 是可以遍历集合的对象,为各种容器提供了公共的操作接口,隔离对容器的遍历操作和底层实现,从而解耦。

    缺点是增加新的集合类需要对应增加新的迭代器类,迭代器类与集合类成对增加。

     


    【Java面试题与答案】整理推荐

     

    展开全文
  • 31 迭代器 Iterator 是什么? 答: Iterator 是可以遍历集合的对象,为各种容器提供了公共的操作接口,隔离对容器的遍历操作和底层实现(解耦)。 缺点是增加新的集合类需要对应增加新的迭代器类,迭代器类与集合...

    31 迭代器 Iterator 是什么?

    答:

    • Iterator 是可以遍历集合的对象,为各种容器提供了公共的操作接口,隔离对容器的遍历操作和底层实现(解耦)。

    • 缺点是增加新的集合类需要对应增加新的迭代器类,迭代器类与集合类也成对增加。

    • 拓展:

      • 迭代器是 Java 中常用的设计模式之一,用于顺序访问集合对象的元素,无需知道集合对象的底层实现。
      • 迭代器通常被称为“轻量级”对象,因为创建它的代价小。

      什么是迭代器(Iterator)?

      • 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。
      • 使用next()获得序列中的下一个元素。
      • 使用hasNext()检查序列中是否还有元素。
      • 使用remove()将迭代器新返回的元素删除。
      • 注意:iterator()方法是java.lang.Iterable接口,被Collection继承。
      • Iterator是Java迭代器最简单的实现,为List设计的ListIterator具有更多的功能,它可以从两个方向遍历List,也可以从List中插入和删除元素。

    看到最后的帮忙点个👍🙏 谢谢,这个对我真的很重要!
    在这里插入图片描述

    展开全文
  • java容器:14、迭代器Iterator是什么

    迭代器Iterator是什么?

    (1)迭代器模式。是java中常用的设计模式之一。可以用于顺序访问集合对象的元素,而不必知道集合对象的底层实现。

    (2)Iterator是可以遍历集合的对象,为各种容器提供了公共的操作接口,隔离对容器的遍历操作和底层实现,从而实现解耦

    (3)缺点是增加新的集合类需要配合增加新的迭代器对象,成对增加。

    相关推荐:java容器——Iterator迭代器详细分析

    展开全文
  • Java面试题之迭代器Iterator是什么

    千次阅读 2019-05-21 18:24:06
    面试过程中,经常会有人问,请说一下介绍一下迭代器Iterator。那么今天我们就来进行学习一下...迭代器Iterator是什么? ** 迭代器(也是一种设计模式),通常被称为轻量级对象 ****:只因为创建它的代价小。 迭代器...

    面试过程中,经常会有人问,请说一下介绍一下迭代器Iterator。那么今天我们就来进行学习一下。首先思考这样一个问题,如果原本对着List编码的,但是后来发现如果能够把同样的代码应用于Set,将会更加方便,此时应该怎么做呢?如何才能不重写代码就可以应用于不同类型的容器。

    迭代器Iterator是什么?

    **

    迭代器(也是一种设计模式),通常被称为轻量级对象

    ****:只因为创建它的代价小。
    迭代器可以解决我们提出的问题。

    它是一个对象,它的工作是遍历并选择序列中的对象,而客户端的程序员不必知道或关心该序列底层的结构。**

    例如Java的Iterator只能单向移动,它能用来:
    (1)使用方法Iterator()要求容器返回一个Iterator。Iterator将准备好返回序列的第一个元素。
    (2)使用next()获得序列中的下一个元素
    (3)使用hasNext()检查序列中是否还有元素。
    (4)使用remove()将迭代器新近返回的元素删除。

    这段我们可以尝试一下这段代码,让我们印象更加深刻。

    import java.util.List;
    import javax.swing.text.html.HTMLDocument.Iterator;
    import typeinfo.pets.Pet;
    import typeinfo.pets.Pets;
    
    public class SimpleIteration {
    	public static void main(String[] args) {
    		List<Pet> pets = Pets.arrayList(12);
    		java.util.Iterator<Pet> it = pets.iterator();
    		while(it.hasNext()) {
    			Pet p = it.next();
    			System.out.print(p.id()+":"+p+" ");
    		}
    		System.out.println();
    		//A simpler approach,when possible:
    		for(Pet p:pets)
    			System.out.print(p.id()+":"+p+" ");
    		System.out.println();
    		//An Iterator can also remove elements:
    		it = pets.iterator();
    		for(int i=0;i<6;i++) {
    			it.next();
    			it.remove();
    		}
    		System.out.println(pets);
    	}
    }
    

    运行结果:
    在这里插入图片描述Iterator还可以移除由next()产生的最后一个元素,这意味着在调用remove()之前必须先调用next()

    这段代码创建一个**display()**方法,而不必知晓容器的确切类型:

    import java.util.ArrayList;
    import java.util.HashSet;
    import java.util.LinkedList;
    import java.util.TreeSet;
    
    import javax.swing.text.html.HTMLDocument.Iterator;
    import typeinfo.pets.*;
    public class CrossContainerIteration {
    	private static void display(java.util.Iterator<Pet> it) {
    		while(it.hasNext()) {
    			Pet p =it.next();
    			System.out.print(p.id()+":"+p+" ");
    		}
    		System.out.println();
    	}
    
    	public static void main(String[] args) {
    		ArrayList<Pet> pets = Pets.arrayList(8);
    		LinkedList<Pet> petsLL = new LinkedList<Pet>(pets);
    		HashSet<Pet> petsHS = new HashSet<Pet> (pets);
    		TreeSet<Pet> petsTS = new TreeSet<Pet>(pets);
    		display(pets.iterator());
    		display(petsLL.iterator());
    		display(petsHS.iterator());
    		display(petsTS.iterator());
    	}
    }
    

    运行结果:
    在这里插入图片描述

    Iterator的一个很强的用处:能够将遍历序列的操作与序列底层的结构分离。

    谢谢大家,请批评指正。

    展开全文
  • 你会用迭代器 Iterator吗?
  • Iterator 接口提供遍历任何 Collection (集合) 的接口,我们可以从一个 Collection 中使用迭代器方法来获取迭代器实例。迭代器取代了 Java 集合框架中的 Enumeration,迭代器允许调用者在迭代过程中移除元素。 ...
  • 迭代器Iterator

    2021-01-27 17:14:50
    文章目录一、迭代器Iterator是什么?二、Iterator怎么使用 一、迭代器Iterator是什么? 1、Iterator接口是提供遍历任何Collection接口。我们可以从一个Conllection中使用迭代器方法来获取迭代器实例。迭代器取代了...
  • js 迭代器iterator

    2021-01-20 11:59:54
    首先让我们了解一下迭代器 iterator 是什么 迭代器iterator)是一种接口,为各种不同的数据结构提供统一的访问机制。任何数 据结构只要部署iertator接口,就可以完成便遍历操作 1. ES6创造了一种新的遍历命令 for...
  • 2. 迭代器 Iterator

    2020-12-30 16:01:11
    迭代器 Iterator 是什么?2. 如何使用3. 小结 1. 迭代器 Iterator 是什么Iterator 接口提供遍历任何 Collection 的接口,我们可以从一个 Collection 中使用迭代器方法来获取迭代器的实例。 代码: // List 获取...
  • #迭代器是什么迭代器是访问集合内元素的一种方式, 一般用来遍历数据 #迭代器和以下标的访问方式(list[0][1])不一样, 迭代器是不能返回的, 迭代器提供了一种惰性方式数据的方式 自定义的迭代器和可迭代对象...
  • 迭代器 Iterator

    2019-04-09 16:06:00
    什么是迭代器  迭代器访问可迭代对象的工具  迭代器指用iter(obj)函数返回的对象(实例)  迭代器可以用next(it)函数获取可迭代对象的数据 ... next(iterator)从迭代器iterator中获取下一个记录,如果无...
  • java迭代器Iterator

    2020-09-18 19:11:32
    迭代器Iterator是一种设计模式,可以使序列类型的数据结构的遍历与被遍历的对象分离,我们无需关系该序列的底层结构是什么。只要拿到对象,就可以用迭代器对对象内部的元素进行遍历。如对集合ArrayList和HashSet迭代...
  • python迭代器 iterator

    2019-03-17 21:09:00
    什么是迭代器 迭代器是访问可迭代对象的工具 迭代器是指iter(obj) 函数返回的对象(实例) 迭代器可以用next(it) 函数获取可迭代对象的数据 迭代器函数 iter(iterable) 从可迭代对象中返回一个迭代器,iterable必须一...
  • 迭代器 Iterator Enumeration1. Iterator 和 ListIterator 的区别是什么 Iterator 可用来遍历 Set 和 List 集合,但是 ListIterator 只能用来遍历 List。 Iterator 对集合只能是前向遍历,ListIterator 既可以前向也...
  • 关于集合中的知识可能对于大部分人而言都耳熟能详了,但是对于一部分人而言,对于集合为什么迭代器Iterator可能一时半会还说不出个所以然来。对于迭代器而言,它一种设计模式,设计模式存在的意义就是为了简化...
  • 迭代器 Iterator 和 生成器Generator什么是迭代器 指能用iter(obj) 函数返回的对象(实例) 迭代器可以用next(it) 函数获取可迭代对象的值迭代器本身没有 值,绑定一个可迭代对象,迭代器 相当于一个 只能下...
  • 迭代器 Iterator 学习资料 先介绍一个概念:Iterable(可迭代对象)。可以直接作用于for循环的对象。 像集合数据类型(list,tuple,dict,set,str等) 和generator(包括生成器和带yield的generator function)都...
  • 迭代器Iterator与Iterable

    2020-05-28 10:17:03
    iterator为Java中的迭代器对象,能够对List这样的集合进行迭代遍历的底层依赖。而iterable接口里定义了返回iterator的方法,相当于对iterator的封装,同时实现了iterable接口的类可以支持for each循环。 iterator...
  • 迭代器iterator

    2014-03-10 23:35:22
    迭代器Iterator)模式,又叫做游标(Cursor)模式。GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。  从定义可见,迭代器模式为容器而生。很明显,对...
  • 1. 迭代器Iterator的作用 什么是迭代器? 迭代器: 可以被next()函数调用并不断返回下一个值的对象称之为迭代器(Iterator) 从另一种角度来定义迭代器就是:提供一种方法访问一个容器对象中各个元素,而又不需暴露该...
  • C++:迭代器iterator

    2021-06-06 20:41:02
    一、什么是迭代器 在对表的一些插入和删除的一些操作,往往要有位置的表示,STL中有内嵌类型iterator来表示。 二、如何表示 例如:对于vector
  • 迭代器是一种模式,它可以使得对于序列类型的数据结构的遍历行为与被遍历的对象分离,即我们无需关心该序列的底层结构是什么样子的。只要拿到这个对象,使用迭代器就可以遍历这个对象的内部. 1.Iterator Java提供...
  • 1. 可迭代对象 Iterable Python中任意的对象,只要它定义了可以返回一个迭代器的__iter__方法,或者定义了可以支持下标...那迭代器是什么呢?   2. 迭代器 Iterator -- 迭代器只能迭代一次 任意对象,只...
  • Java 迭代器Iterator

    2017-01-16 22:44:31
    其实,这个很小的知识点,但的确能解决很多问题,我相信对刚出来的一些新手,基本都有个毛病,能做出来东西,但没...下面我们就来讲讲迭代器,其实很简单的啦:  Java中的Iterator功能比较简单,并且只能单向移动:
  • 1.Iterator是什么? Iterator是一个集合迭代器,用来遍历Collection集合。在Collection接口中封装了获取Iterator迭代器的方法。 2.Iterator接口中的三个重要方法 boolean hasNext(); E next(); void remove(); 3....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,638
精华内容 655
关键字:

迭代器iterator是什么