「java三种for循环」java for 循环

博主:adminadmin 2022-11-29 20:32:07 44

本篇文章给大家谈谈java三种for循环,以及java for 循环对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java的for循环、增强for循环、lambda表达式中的forEach 三种方式优缺点比较?

个人理解不喜勿喷。

简单的来说其实三种并没有什么太大的区别,一般情况下的性能也差不多。

for循环:

优点:可以直接获取下标,能更精确的定位。下标变量属于循环内变量,循环结束会自动回收。下标变量的步长可以自定,比较灵活。

缺点:需要根据下标才会获取循环内容。只能循环有序集合和数组,如Set和Map就无法遍历。

增强for:

优点:循环直接进行赋值,直接得到循环对象,不需要通过下标获取。可以遍历所有集合类型和数组。

缺点:循环有序集合时无法定位下标,需要在循环外层定义下标。无法遍历Map类型。

lambda:

优点:可以对所有集合类型和Map进行循环,特别是支持对Map进行循环,循环也是直接进行赋值,直接得到循环对象。

缺点:循环有序集合时无法定位下标,无法遍历数组,因为理论上来说他是属于迭代器的一种。同时因为循环体属于一个封闭范围的线程,在循环体内使用部分循环体外的变量需要加final关键字,很不方便。

另外说到了迭代器,可以参考lambda,不过写法就没lmbda那么方便了,不过迭代器有很多功能是循环比不上的,可以去看看。

java中for循环的几种写法

以下为for循环的几种写法:

/***

方法一:最普通的不加思考的写法

* p*优点:较常见,易于理解

* p* 缺点:每次都要计算list.size()*/

for (int i = 0; i list.size(); i++) {

System.out.println(list.get(i));

}

/***

方法二:数组长度提取出来

* p* 优点:不必每次都计算

* p* 缺点:

1、m的作用域不够小,违反了最小作用域原则

2、不能在for循环中操作list的大小,比如除去或新加一个元素*/

int m = list.size();

for (int i = 0; i m; i++) {

System.out.println(list.get(i));

}

/***

方法三:数组长度提取出来

* p* 优点:

1、不必每次都计算

2、所有变量的作用域都遵循了最小范围原则

* p* 缺点:

1、m的作用域不够小,违反了最小作用域原则

2、不能在for循环中操作list的大小,比如除去或新加一个元素*/

for (int i = 0, n = list.size(); i n; i++) {

System.out.println(list.get(i));

}

/***

方法四:采用倒序的写法

* p* 优点:

1、不必每次都计算

2、所有变量的作用域都遵循了最小范围原则

* p* 缺点:

1、结果的顺序会反

2、看起来不习惯,不易读懂

* p* 适用场合:与显示结果顺序无关的地方:比如保存之前数据的校验*/

for (int i = list.size() - 1; i = 0; i--) {

System.out.println(list.get(i));

}

/***

方法五:Iterator遍历

* p* 优点:简洁

* p* 缺点:*/

for (IteratorString it = list.iterator(); it.hasNext();) {

System.out.println(it.next());

}

/*** 方法六:

jdk1.5新写法

* p* 优点:简洁结合泛型使用更简洁*

p* 缺点:jdk1.4向下不兼容*/

for (Object o : list) {

System.out.println(o);

}

java的这三种for循环有什么区别?

第一种是最普通的for循环

这个应该没啥好说的

第二种是第一种for循环的变种也可以说是简写

只能对数组或者是List这样的集合使用

这个是java

1.5新加入的

第三种不是for循环。使用的是迭代器

iterator

像是List这样的集合

一般多是用这种方法

用java实现三种方法循环输出九九乘法表:

for循环的结构:for(表达式 1;表达式 2;表达式  3) {  循环体  }

表达式 1:一般为赋值表达式;

表达式 2:一般为关系表达式或逻辑表达式;

表达式 3:一般为赋值表达式或自增、自减表达式,用以修改循环变量的值。

while循环的结构:  while(表达式) 循环体

1、while 是C语言中的关键字;

2、圆括号中的表达式可以是C语言中任意合法的表达式,不能为空,用它来控        制循环体是否执行;

3、循环体是一条语句,若需要使用多条语句,应使用复合语句(用{ }括起来);

4、若条件开始直接为假,则直接跳出循环。

do...while语句为先执行后判断表达式的值。

1、do 是C语言的关键字,必须和while一起使用;

2、循环由do开始,由while结束;

3、循环体是一条语句,若需要使用多条语句,应使用复合语句(用{ }括起来);

4、圆括号中的表达式可以是C语言中任意合法的表达式,不能为空,用它来控        制循环体是否执行;

扩展资料:

一般形式为:

for(单次表达式;条件表达式;末尾循环体)

{

中间循环体;

}

其中,表示式皆可以省略,但分号不可省略,因为“;”可以代表一个空语句,省略了之后语句减少,即为语句格式发生变化,则编译器不能识别而无法进行编译。

for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。

俩“;”号之间的条件表达式是一个关系表达式, 其为循环的正式开端,当条件表达式成立时执行中间循环体。

执行的中间循环体可以为一个语句,也可以为多个语句,当中间循环体只有一个语句时,其大括号{}可以省略,执行完中间循环体后接着执行末尾循环体 。

执行末尾循环体后将再次进行条件判断,若条件还成立,则继续重复上述循环,当条件不成立时则跳出当下for循环。

Pascal语言中的for循环:

for 循环变量:=初值 to/downto 终值 do

begin

循环体

end;

循环变量从起点到终点每次加1或减1(to 为加1,downto为减1)。

Pascal

while 条件 do 语句

意为当条件符合时,接着做下面的语句;不符合时,退出循环。

C

do 语句 while(条件);

while(条件) 语句;

C++

while(条件) 语句;

do 语句 while(条件);

Java

while(条件) {语句;}

do {语句;} while(条件);

二者的区别是do-while最少会被执行一次。

循环中可以使用continue结束当前循环,回到循环开始处开始下一次循环。也可以用break跳出整个循环。

javascript

JavaScript中while循环的目的是为了反复执行语句或代码块。

只要指定条件为true,循环就可以一直执行代码块。

JavaScript中while循环的语法如下:

while (条件) {需执行的代码 };

do {需执行的代码 } while (条件);

注意:do...while 循环是 while 循环的变种。该循环程序在初次运行时会首先执行一遍其中的代码,然后当指定的条件为 true 时,它会继续这个循环。所以可以这么说,do...while 循环为执行至少一遍其中的代码,即使条件为 false,因为其中的代码执行后才会进行条件验证。

PHP

while 循环是 php 中最简单的循环类型。它和 C 语言中的 while 表现得一样。语法如下:

while(expr){

statement

}

参考资料来源:百度百科--for循环

参考资料来源:百度百科--while

java三种for循环的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java for 循环、java三种for循环的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-29,除非注明,否则均为首码项目网原创文章,转载请注明出处。