java基础之----foreach循环的原理

记得上次面试的时候,被面试官问了一个问题:foreach循环的原理?当时有点措手不及,确实天天用,熟的不能再署的东西,突然被问原理,一下子就不知道怎么回答了。这里我查阅了一下资料,进行总结一下。

原理:

List之所以能使用foreach循环遍历,是因为List都是Collection的子接口,而Collection是Iterable的子接口,List的实现类继承了一个AbstractList抽象类,这个抽象类完全实现了Iterator迭代器。

原文地址:https://www.cnblogs.com/zuoyi2319516228/p/12165651.html

时间: 2024-11-08 17:00:00

java基础之----foreach循环的原理的相关文章

2.24 Java基础总结 ①for-each循环②继承概念③全类名④方法重写

①for-each循环②继承概念③全类名④方法重写 一.for-each循环依次遍历集合中每个元素的时候,for循环的一种int [] a = {1,2,3};for(int result : a){ System.out.println(result);} 全部依次遍历,但是没有细节的处理 二.继承is-a的关系子类继承来自父类中的所有属性和方法,呗继承的受访问修饰符限制但是构造不能被继承,父类的构造在构造是会起作用优点:①复用性②扩展父类属性和方法 Java是单继承,一个类只有一个父类单继承

【Java基础】foreach循环

从一个小程序说起: 1 class lesson6foreach 2 { 3 public static void main(String[] args) 4 { 5 int array[]={2,3,1,5,4,6}; 6 7 for(int i=0;i<array.length;i++)//循环输出array的元素 8 { 9 System.out.println(array[i]); 10 } 11 } 12 } 但是大家注意,for循环中i的值,我们并不关心.因此从Java5之后,for

JAVA中的for-each循环与迭代

在学习java中的collection时注意到,collection层次的根接口Collection实现了Iterable<T>接口(位于java.lang包中),实现这个接口允许对象成为 "foreach" 语句的目标,而此接口中的唯一方法,实现的就是返回一个在一组 T 类型的元素上进行迭代的迭代器. 一.迭代器Iterator 接口:Iterator<T> 1 public interface Iterator<E>{ 2 3 boolean h

黑马程序员——java基础——选择、循环

-----------android培训.java培训.java学习型技术博客.期待与您交流!------------ 今天回顾了一下JAVA学习中的选择语句,循环语句,和数组,在JAVA中的选择语句和C语言中差不多有if.switch一个if语句由一个后跟到一到多个语句的布尔表达式组成.顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: while循环 do…while循环 for循环 for循环的用法 先来说说哦For循环

java基础---------递归和循环的使用效率

package java基础; /** * 参数递归和迭代的效率,递归效率太低,如果用到递归一般使用循环 */ public class TestRecursion { public static void main(String[] args) { //标记递归方法开始执行事件 long d1=System.currentTimeMillis(); System.out.printf("%d阶乘结果:%s%n",10,factorial(10)); //递归程序结束时间 long d

04、Java基础语法(循环嵌套、break、continue、方法、方法的重载、数组动态初始化)

复习: 流程控制语句 - 顺序结构 - 分支结构 - if-else - switch - 循环结构 - for - while - do...while 1.循环嵌套 2.控制循环的语句 3.方法 4.方法的重载 5.数组的动态初始化 1.循环嵌套 ctrl + alt + L 格式化代码 "\n"换行符 "\t"制表符 九九乘法表 for (int i = 1; i < 10; i++) { for (int j = 1; j <= i; j++)

java中的foreach循环

foreach语句是java5的新特征之一,在遍历数组.集合方面,foreach为开发人员提供了极大的方便. foreach语句是for语句的特殊简化版本,但是foreach语句并不能完全取代for语句,然而,任何的foreach语句都可以改写为for语句版本. foreach并不是一个关键字,习惯上将这种特殊的for语句格式称之为“foreach”语句.从英文字面意思理解foreach也就是“for 每一个”的意思.实际上也就是这个意思. foreach的语句格式: for(元素类型t 元素变

Java基础---使用foreach操作数组(三十三)

使用 foreach 操作数组 foreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组.集合时, foreach 更简单便捷.从英文字面意思理解 foreach 也就是" for 每一个"的意思,那么到底怎么使用 foreach 语句呢? 语法: 我们分别使用 for 和 foreach 语句来遍历数组 运行结果: 看到 foreach 的方便了吧!! 留个思考问题给大家:如果想在 foreach 语句中获取数组元素的下标,该如何做呢?? 代码: im

java基础三种循环的使用及区别

摘要:Java新人初学时自己的一些理解,大神们路过勿喷,有什么说的不对不足的地方希望能给予指点指点,如果觉得可以的话,希望可以点一个赞,嘿嘿,在这里先谢了.在这里我主要说的是初学时用到的Java三个循环体的用法及区别:for  while和do while在什么时候会使程序代码更方便简洁: 一.for循环体,这个在我以后写程序代码都是比较长用的一个循环体之一,for循环主要多数用到我们已经知道循环次数的循环程序中. 表达式:for(初始化:布尔表达式:更新){ 程序代码....... } for