先用一道笔试题目来引出

下列关于for循环和while循环的说法中哪个是正确的?( )

A.while循环能实现的操作,for循环也都能实现

B.while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C.两种循环任何时候都可替换

D.两种循环结构中都必须有循环体,循环体不能为空

for循环一般表达式:

for(表达式1;表达式2;表达式3)

语句

它的执行过程如下:

先求解表达式1。

求解表达式2,若其值为真(非0),则执行for语句中指定的内嵌语句,然后执行下面第(3)步;若其值为假(0),则结束循环,转到第5)步。

求解表达式3。

转回上面第2)步继续执行。表达式1只执行一次。

循环结束,执行for语句下面的一个语句

while循环一般表达式:

while(表达式)语句

其中表达式是,语句为循环体。

while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。其执行过程可用下图表示。

使用while语句应注意以下几点:

1、while语句中的表达式一般是关系表达或逻辑表达式,只要表达式的值为真(非0)即可继续循环。

2、循环体如包括有一个以上的语句,则必须用{}括起来,组成复合语句。

一般在使用时,while循环是你知道条件的前提下才使用的,而for循环是需要知道循环次数。

但是我们也可以在for里面加入if来判断以及break,而while里面加入判断条件的变量值自增,从而来达到for和while的互换。

两者的区别在于增强for循环,while不能实现。

增强for循环一般表达式:

for ( 循环变量类型 循环变量名称 : 要被遍历的对象) 循环体

增强for循环和iterator遍历效果是一样的,但增强for循环不能再循环里面动态删除集合内容,不能获取下标。

public class ForArrary
{
public static void main (String[] args)
{
int[] arr = {1,2,3,4,5,6,7};
for(int a:arr)
{
System.out.print(a);
}
}
}

笔试题答案为B