专业的JAVA编程教程与资源

网站首页 > java教程 正文

了解java的三大循环的运用(java三种循环的基本结构)

temp10 2024-11-03 15:07:06 java教程 9 ℃ 0 评论

循环

除了能够对您的程序应用条件并根据各种if/ then 场景看到不同的结果外,

了解java的三大循环的运用(java三种循环的基本结构)

您有时还希望您的代码一遍又一遍地做同样的事情,直到工作完成。

在本节中,了解用于迭代代码或不止一次执行的构造。

了解java的三大循环的运用

什么是循环?

循环是在满足特定条件(或一组条件)时重复执行的编程构造。

例如,您可能要求程序读取所有记录,直到数据文件结束,或者依次处理数组的每个元素。(您将在下一部分中了解数组)。

三个循环结构使得可以迭代代码或多次执行它:

for 循环

while 循环

do... while循环

for循环

Java语言中的基本循环结构是for 语句。您可以使用for语句对一系列值进行迭代,以确定执行循环的次数。

for循环的抽象语法是:

for (initialization; loopWhileTrue; executeAtBottomOfEachLoop) {

statementsToExecute

}

在开始循环,初始化语句执行(多个初始化语句可以用逗号分隔)。

只要loopWhileTrue(必须取值为一个Java条件表达式true或 false)为真,循环执行。

在循环的底部,executeAtBottomOfEachLoop执行。

例如,如果您希望main()清单8 中的方法中的代码执行三次,则可以使用for循环。

清单8. for循环

public static void main(String[] args) {

Logger l = Logger.getLogger(Person.class.getName());

for (int aa = 0; aa < 3; aa++)

Person p = new Person("Joe Q Author", 42, 173, 82, "Brown", "MALE");

l.info("Loop executing iteration# " + aa);

l.info("Name: " + p.getName());

l.info("Age:" + p.getAge());

l.info("Height (cm):" + p.getHeight());

l.info("Weight (kg):" + p.getWeight());

l.info("Eye Color:" + p.getEyeColor());

l.info("Gender:" + p.getGender());

}

}

局部变量aa在清单8开始时初始化为零。此语句只在循环初始化时执行一次。然后循环继续三次,每次 aa增加一。

你将在下一节看到一个替代for循环语法可用于循环实现接口的 Iterable结构(如数组和其他Java实用程序类)。

现在,请注意使用清单8中的for循环语法。

while循环

while循环的语法是:

while (condition) {

statementsToExecute

}

您可能怀疑,如果条件评估为true,循环执行。

在每个迭代的顶部(即,在任何语句执行之前),条件被求值。如果条件评估为true,循环执行。

因此, while如果它的条件表达式至少一次不为真,循环可能永远不会执行。

再看看清单8中的for循环。为了比较,清单9使用循环来获得相同的结果。while

清单9. while循环

public static void main(String[] args) {

Logger l = Logger.getLogger(Person.class.getName());

int aa = 0;

while (aa < 3) {

Person p = new Person("Joe Q Author", 42, 173, 82, "Brown", "MALE");

l.info("Loop executing iteration# " + aa);

l.info("Name: " + p.getName());

l.info("Age:" + p.getAge());

l.info("Height (cm):" + p.getHeight());

l.info("Weight (kg):" + p.getWeight());

l.info("Eye Color:" + p.getEyeColor());

l.info("Gender:" + p.getGender());

aa++;

}

}

正如你所看到的,while循环需要比for循环更多的内务。您必须初始化aa 变量,并记住在循环的底部递增它。

do ... while循环

如果你想要一个循环总是执行一次,然后检查它的条件表达式,你可以使用一个do...while循环,如清单10所示。

清单10. do...while循环

int aa = 0;

do {

Person p = new Person("Joe Q Author", 42, 173, 82, "Brown", "MALE");

l.info("Loop executing iteration# " + aa);

l.info("Name: " + p.getName());

l.info("Age:" + p.getAge());

l.info("Height (cm):" + p.getHeight());

l.info("Weight (kg):" + p.getWeight());

l.info("Eye Color:" + p.getEyeColor());

l.info("Gender:" + p.getGender());

aa++;

} while (aa < 3);

aa < 3直到循环结束才检查条件表达式()。

循环终止

有时,您需要在条件表达式求值之前退出或终止循环 false。

这种情况可能发生,如果你搜索一个数组的String一个特定的值,一旦你找到它,你不关心数组的其他元素。

对于想要break保留的时间,Java语言提供了语句,如清单11所示。

清单11. break语句

public static void main(String[] args) {

Logger l = Logger.getLogger(Person.class.getName());

int aa = 0;

while (aa < 3) {

if (aa == 1)

break;

Person p = new Person("Joe Q Author", 42, 173, 82, "Brown", "MALE");

l.info("Loop executing iteration# " + aa);

l.info("Name: " + p.getName());

l.info("Age:" + p.getAge());

l.info("Height (cm):" + p.getHeight());

l.info("Weight (kg):" + p.getWeight());

l.info("Eye Color:" + p.getEyeColor());

l.info("Gender:" + p.getGender());

aa++;

}

}

该break语句将您带到它所在的循环之外的下一个可执行语句。

循环继续

在清单11中的(简单的)示例中,您只想执行一次循环,然后执行bail。

您也可以跳过循环的单次迭代,但继续执行循环。为此,您需要continue语句,如清单12所示。

清单12. continue语句

public static void main(String[] args) {

Logger l = Logger.getLogger(Person.class.getName());

int aa = 0;

while (aa < 3) {

aa++;

if (aa == 2)

continue;

Person p = new Person("Joe Q Author", 42, 173, 82, "Brown", "MALE");

l.info("Loop executing iteration# " + aa);

l.info("Name: " + p.getName());

l.info("Age:" + p.getAge());

l.info("Height (cm):" + p.getHeight());

l.info("Weight (kg):" + p.getWeight());

l.info("Eye Color:" + p.getEyeColor());

l.info("Gender:" +

p.getGender());

}

}

在清单12中,您跳过循环的第二次迭代,但继续到第三次。

continue当你在处理记录并遇到你不想处理的记录时,就会派上用场。您可以跳过该记录并移至下一个记录。

以上是南昌北大青鸟小编精心为你查找的技术文章,这里有你喜欢的的文章。还有好的java技术,欢迎来电:零七九一:87672992

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表