java里的foreach迭代器_java 中 for 、foreach 和 迭代器 的学习笔记
for ,foreach 的区别如下:
1. 形式区别
对于for循环,我们采用:
for(int i=0;i
对于foreach:
for(int i:arr){...}
对与迭代器:
Iterator it = arr.iterator();
while(it.hasNext()){ object o =it.next(); ...};
2. 条件差别
for需要知道数组或者集合的大小,而且需要时有序的,不然无法遍历;
foreach和iterator不需要知道数组或者集合的大小,他们都是得到集合内的每一个元素然后进行处理;
3. 多态差别
for和foreach都需要知道自己的集合类型,甚至要知道自己集合内的元素类型,不能实现多态。这个使用的语法上都可以表示出来。
Iterator是一个接口类心,它不关心集合的类心和集合内的元素类型,因为它是通过hasnext和next来进行下一个元素的判断和获取,这一切都是在集合类型定义的时候就完成的事情。迭代器统一了对容器的访问模式,这也是对接口解耦的最好表现。
4. 用法差别
for一般可以用于简单的顺序集合,并且可以预测集合的大小;
foreach可以遍历任何集合或者数组,但是使用者需要知道遍历元素的类型。
iterator是最强大的,它可以随之修改元素内部的元素。可以在遍历的时候使用remove(); 而且iterator不需要知道元素类型和元素大小,通过hasnext()判断是否遍历完所有元素。 而且在对范型的集合进行遍历的时候,iterator是不二的选择,就是因为不需要知道元素类型便可以遍历。
java里的foreach迭代器_java 中 for 、foreach 和 迭代器 的学习笔记相关推荐
- java foreach标签_Java中Velocity foreach循环标签详解
Java中Velocity foreach循环标签详解 Java Velocity中foreach循环可以很容易的遍历数组或者集合. 定义 #foreach( $elem in $allElems) ...
- java里有哪些对象_Java中创建对象的方式有哪些
创建对象的几种方式: 1.这是最常用的方法:通过new 创建对象.这种方法需要用到构造器.Demo demo1=new Demo(); Demo demo2=new Demo(1,"有参构造 ...
- java里有位移吗_Java 中位移运算符 ,,
Java 中的三种位移运算符 java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : ...
- java里包含怎么算_java中怎么判断一个字符串中包含某个字符或字符串
展开全部 /*这是一62616964757a686964616fe58685e5aeb931333363393630个静态函数,不用声明对象就可以用的,如你的类名为Test,在任何情况下都可以调用Te ...
- java 里button的功能_java中怎么通过摁一个按钮显示一个图片的功能
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import java.awt.*; import javax.swing.*; import java.awt.event.*; public clas ...
- java for循环返回值_Java中的for循环——通过示例学习Java编程(9)
作者:CHAITANYA SINGH 来源:https://www.koofun.com/pro/kfpostsdetail?kfpostsid=21 循环用于反复执行同一组语句,直到满足特定条件为止 ...
- Java中如何创建自定义的注解学习笔记(MD版)
概要 Java中如何创建自定义的注解学习笔记(MD版). 博客 博客地址:IT老兵驿站. 前言 记得这篇笔记还是在泉州的龙玲酒店记录的,是一个周六的晚上,坐飞机从上海到泉州,从笔记中能勾起一些旅游的回 ...
- 第98讲:使用SBT开发时动手解决rt.jar中CharSequence is broken等问题学习笔记
第98讲:使用SBT开发时动手解决rt.jar中CharSequence is broken等问题学习笔记 几乎所有从IDEA官网上下载安装在win上,采用默认方式自动运行的都 会遇到这个问题. er ...
- Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记
Asp.Net 中Report Service (RDLC)动态绑定数据-学习笔记 1)托拽ReportViewer控件到aspx页面,此时,系统会自动添加相关引用,修改Web.config设置: 2 ...
- python面向对象编程中方法和属性_Python面向对象编程中关于类和方法的学习笔记...
Python面向对象编程中关于类和方法的学习笔记 类与类方法是面向对象的编程语言中必不可少的特性,本文总结了Python面向对象编程中关于类和方法的学习笔记,需要的朋友可以参考下 类和实例 pytho ...
最新文章
- 力扣(LeetCode)刷题,简单题(第21期)
- Swift 圆环进度条
- SQL Server 2005——下一代的数据管理和分析软件[转]
- 《去哪网编程题》身份证分组
- Jzoj4348 打击目标
- AHK 中的字符串拼接和遍历操作
- css3之 谜灯卡片_纯css3灯泡开关特效代码
- CCNA学习笔记-1 基础知识回顾
- 小刘同学的CMOS模拟集成电路学习小记(不停更新)
- 2021最新 武汉互联网公司
- 【Java多线程】synchronized同步语句块
- 净推荐值(NPS)完整行动指南
- CapstoneCS5211,CS5212,CS5256,CS5811,CS5288,……型号大全
- 服务器硬盘可以换盘位吗,RAID里的硬盘可以互换槽位吗
- for 和 for...in 和 for...of
- Web 前端开发规范手册
- 文本编辑器的制作(C#)
- java web 酒店管理系统_GitHub - inkss/hotelbook-JavaWeb: 酒店管理系统-JavaWeb期末项目。...
- 算法工程师-机器学习-数据科学家面试准备[外企和国外公司、春招、秋招]
- TI1443Boost + Uniflash下载问题:卡在Connected to COM port问题解决