Java Iterable和Iterator有什么不同和联系?

发布于2022-01-13 08:21:45
5个回答
admin
网友回答2022-01-13
java ITerable和Iterator的区别如下:
1.Iterator是迭代器类,而Iterable是为了只要实现该接口就可以使用foreach,进行迭代.
Iterable中封装了Iterator接口,只要实现了Iterable接口的类,就可以使用Iterator迭代器了。
2.集合Collection、List、Set都是Iterable的实现类,所以他们及其他们的子类都可以使用foreach进行迭代。
3.Iterator中和核心的方法next(),hasnext(),remove(),都是依赖当前位置,如果这些集合直接实现Iterator,则必须包括当前迭代位置的指针。当集合在方法间进行传递的时候,由于当前位置不可知,所以next()之后的值,也不可知。而当实现Iterable则不然,每次调用都返回一个从头开始的迭代器,各个迭代器之间互不影响。
admin
网友回答2022-01-13
java有GC,c/c++没有。
admin
网友回答2022-01-13
1、Iterable是一个类;
2、Iterator()是一个方法;
3、Iterable是一个包含Iterator()方法的类;
admin
网友回答2022-01-13
如果你是初学,建议你从C语言开始学,C语法简洁,功能强大,支持结构化编程,是初学者的理想入门编程语言。
有了C的基础,你就可以选一种面向对象(OOP)的语言来学了,其实C#,C++,java在基本语法上和C差不多,就是增加了面向对象的许多东西,因而功能更加强大,面向对象编程是现在编程方法的主流,是必学的。
至于学哪一门,我认为可以这样简单的说一下:
C++是贵族式的编程语言,虽然其功能强大,运行效率高,尤其在系统编程方面,但其学习的难度较其他语言大点。
C#语言是专门为.net平台量身打造的一种高级语言,其语法源于C++,但我感觉更像java,如果你以后有志于在.net框架下作开发,学C#最好。
java 语法简单,学习难度相对较小,但其功能依然强大。而且java是跨平台的,可以在多种操作系统下运行。如果你以后有志于做跨平台的软件开发,学java最好。
其实学好哪种语言都是很有前途的,加油吧
admin
网友回答2022-01-13
当然有区别啦@!

回到
顶部