java 迭代器的原理_java里Iterator的原理

Iterator:迭代器。

其实就是集合取出元素的方式,每个容器的数据结构不一样,所以他们存取的方式不一样,具体事项方法不一样,具体实现方法不一样,每个集合都具备取出方式,对于取出这个动作不足以用一个函数来描述,需要用多个功能来体现,一般情况将多个功能封装到一个对象里面去,所以每个容器都有一个取出的对象,而且,因为数据结构不同,每个取出对象中实现的方式不一样,取出对象用一个类来描述,定义在了集合元素内部,直接操作元素,叫内部类,这个类完成取出元素的定义

这些内部类都符合一个规则,该规则是Iterator,如何获取集合的取出对象呢?通过一个对外提供的方法iterator()

理解迭代器一个生活中的例子:

电玩城里面的夹娃娃

玻璃大罐子就是个容器,里面的布娃娃就是元素,这些布娃娃都有不同的排列方式,取出娃娃,夹子就是迭代器,夹子定义在了容器内部,夹子就是取出方式,夹子是复杂事物,有异动、打开、闭合的方法,而且封装在了内部,不同电玩城的夹子样式不一样,但都具有相同的移动、打开、闭合方法,我们只能通过操作杆操作夹子对象,而iterator()就相当于操作杆

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值