美文网首页程序员
JAVA中for和while的区别

JAVA中for和while的区别

作者: 枫木林曦华 | 来源:发表于2016-09-21 10:46 被阅读0次

    先用一道笔试题目来引出

    下列关于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

    相关文章

      网友评论

        本文标题:JAVA中for和while的区别

        本文链接:https://www.haomeiwen.com/subject/dmqaettx.html