Java教程

4.15 while语句

本文主要是介绍4.15 while语句,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

while 语句是最为基本的循环控制语句。while 语句也被称为 while 循环。下面是 while 语句的语法规则。

// while 语句的语法规则
while (条件表达式)
    语句

和 if-else 语句一样,在条件表达式位置所写的表达式的值将会被转换为布尔型。一旦开始执行 while 语句,就将首先对条件表达式求值。如果该值为假,则不会执行循环部分的语句并结束该 while 语句。如果条件表达式的值为真,则将执行该语句。在语句执行结束之后,会再次对条件表达式求值。如果此时该值仍然为真,则再次执行循环部分的语句。在条件表达式的值变为假之前,将一直重复执行循环部分的语句。

和 if-else 语句一样,可以在循环部分的语句处使用代码块(代码清单 4.4)。

代码清单 4.4 while语句和代码块

// 容易产生混淆的缩进方式。
// 第二个 console.log() 其实是在 while 循环之外的。
var hzh = 1;
while (hzh)
      console.log("黄子涵在循环之内");
      console.log("黄子涵不在循环之内");
// 使用代码块的话就能很容易地理清语句结构
var hzh = 1;
while (hzh) {
      console.log("黄子涵在循环之内");
      console.log("黄春钦在循环之内");
}
// 使用代码块的话就能很容易地理清语句结构
var hzh = 1;
while (hzh) {
    console.log("黄子涵在循环之内");
}

在 while 语法结构中可以使用任意的语句。if-else 语句也属于是语句,while 语句也属于语句。也就是说,在下面这样的 while 的循环中,也是可以使用 while 语句或者是 if-else 语句的。

// 使用代码块的话就能很容易地理清语句结构
var hzh = 1;
var hcq = 2;
while (hzh) {
    while (hcq) {
        console.log("黄子涵在双循环之中");
    }
}
// while 语句中嵌入 if 语句
var hzh = 1;
var hcq = 2;
while (hzh) {
    while (hcq) {
        console.log("黄子涵在循环之中");
    }
}

在条件表达式始终为真的情况下,循环内的语句将会被无限次重复执行。这样的循环一般称为无限循环。意外形成的无限循环是一种致命性的错误。

在其他的程序设计语言中,有时会有意地使用一些无限循环,但在客户端 JavaScript 开发中,无限循环就是一种错误。

要避免出现无限循环,从 while 循环中跳出,可以执行以下操作。

  • 保证在循环过程中条件表达式的值将变为假
  • 在循环内部使用 break 语句
  • 在循环内部使用 return 语句
  • 在循环内部抛出异常

对于在循环过程中条件表达式的值变为假的情况,在此考虑一个进行 10 次循环的 while 循环的例子。其实对于这个例子的功能,用之后将要介绍的 for 循环会更加直观,在这里仅仅因示例的需要而使用了 while 语句。

// 循环 10 次的 while 语句
var hzh = 0;
while (hzh < 10) {
    console.log(hzh);
    hzh++;
}
// 循环 10 次的 while 语句(另一种实现方式)
var hzh = true;
var hcq = 0;
while (hzh) {
    console.log(hzh);
    hcq++;
    if (hcq == 10) {
        hzh = false;
    }
} 

第二种方式中通过改变标记变量来跳出 while 循环的做法,并不符合编程习惯。

这篇关于4.15 while语句的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!