我是靠谱客的博主 激情未来,最近开发中收集的这篇文章主要介绍java while for break,Java基础①--->while,do...while,for,break,continue语句,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一,while语句和do…while语句

private void whileMethod() {

int x=1;

while(x<3){

System.out.println("while语句:"+x);

x++;

}

}

private void doWhileMethod() {

int x=1;

do{

System.out.println("while语句:"+x);

x++;

}

while(x<3);

}

两者的语法:

while(条件表达式){循环体}

do{循环体}while(条件表达式)

当我们需要执行多次某条语句时,就可以把该条语句放置到while的循环体中。

当然这两者也有一点小小的区别。

两者的区别:

while语句,如果不满足条件表达式,那么一次也不会执行循环体。

而do…while则不同,无论while的判断条件与否,都会执行一次循环语句。

使用while语句时需要注意的地方:

private void whileErrorMethod() {

int x=1;

while(x<3);{

System.out.println("while语句:"+x);

x++;

}

}

上面的代码乍眼一看,好像是没有多大的问题。执行时也不会出现任何问题。可是,却不会执行我们的循环语句。

究其原因,是因为”while(x<3)”后面不小心多了“;”,我们知道,语句结束有两种方式,要么是以分号”;”结束,要么是大括号”}”结束。

当程序执行到此时,会不断的判断x是否小于3,从而不会执行下面那条独立的代码块,而且显然这条代码块是毫无意义的。

二,for语句

private void forMethod() {

for (int i = 0; i <10; i++) {

System.out.println("for语句:"+i);

}

}

for语句的语法:

for(初始化表达式;条件表达式;循环后的操作表达式){ 执行语句; }

既然都可以进行循环,那么怎么选择它们?

private void forAndWhileDistinction() {

for (int i = 0; i <10; i++) {

System.out.println("for语句:"+i);

}

System.out.println("for语句结束:"+i);

int j=0;

while(j<10){

System.out.println("while语句:"+j);

}

System.out.println("while语句结束:"+j);

}

当定义在for语句中的变量结束循环后,该变量会在内存中释放。

而在for循环外,打印该变量,程序会出现错误。

所以,如果只是为了循环增量的存在,控制循环次数,最好使用for循环,因为这样可以优化内存,虽然只是小小的一丢丢。

三,for语句另类写法

(1)写出来的一定要满足for语句的语法

for(System.out.println("a");System.out.println("b");System.out.println("c")) {

System.out.println("d");

}

这种写法是错误的,原因是“System.out.println(“b”);”并不是条件表达式,仅仅只是一条语句,必须要有真假。

(2)不执拗于传统的写法

int x=0;

for (System.out.println("a");x<3;System.out.println("c")) {

System.out.println("d");

x++;

}

打印结果: adcdc 不要执拗于for语句的固定写法,只要是表达式即可。syso打印语句满足上诉所说的,就可以写。

(3)有种奇葩的写法虽然怪但不可以说它错

//一般写法

for (int i = 0; i<3; i++) {

}

//奇葩写法

int i=0;

for (;i<3;i++) {

i++;

}

(4)最简单的无限循环的写法

for(;;){}

while(true){}

四,for语句的进阶

打印出:

*****

****

***

**

*

分析:

for (int i = 0; i <5; i++) {

for (int j = 0; j <5; j++) {

System.out.print("*");

}

System.out.println();//换行

}

结果:

*****

*****

*****

*****

*****

//可以很容易的得出,外层的循环控制行数,内存的循环控制列数

//而要求的就属于列数的改变,首先想到的就是定义一个变量,让它不断的变化,来控制一列星星的变化,所以就有:

int value=5;

for (int i = 0; i <5; i++) {

for (int j = 0; j

System.out.print("*");

}

System.out.println();//换行

value--;

}

//这样可以实现,我们还可以通过++的方式来实现,比如:

int value1=0;

for (int i = 0; i <5; i++) {

for (int j = value1; j <5; j++) {

System.out.print("*");

}

System.out.println();//换行

value1++;

}

//但这样仍然不简便,我们可以发现该变量的增加或减少,是和最外层的变量"i"是一模一样的。所以就有这样的写法

for (int i=0; i <5; i++) {

for (int j =i; j <5; j++) {

System.out.print("*");

}

System.out.println();//换行

}

五,break和continue语句

(1)break

break只能定义在switch语句或循环语句内。在循环语句内,用于结束循环。

for (int i = 0; i <3; i++) {

System.out.println("i"+i);

break;

System.out.println("i"+i);

//break后直接跳出循环,下面这条语句相当于废话,且是错误的

}

for (int i = 0; i <3; i++) {

for (int j = 0; j <3; j++) {

System.out.println("i"+i);

break;//如果break存在于内循环中,break掉的仅仅是内循环。

}

}

outer:for (int i = 0; i <3; i++) {

for (int j = 0; j <3; j++) {

System.out.println("i"+i);

break outer;

}

}

//如果想要在内循环语句中,break掉整个循环,可以为break打上一个标记

(2)continue语句

continue只能运用在循环中,特点是继续下次循环。

for (int i=0; i <10; i++) {

if(i%2==1)

continue;//满足后将继续循环,也就不会执行下面的打印语句

System.out.println("i"+i);

}

quter:for (int i=0; i <10; i++) {

for (int j = 0; j < 10; j++) {

System.out.println("i"+i);

continue quter;

}

//也可以为contine添加上标记,来指明继续至哪儿的循环。这样后,内循环将只执行一次。

}

最后

以上就是激情未来为你收集整理的java while for break,Java基础①--->while,do...while,for,break,continue语句的全部内容,希望文章能够帮你解决java while for break,Java基础①--->while,do...while,for,break,continue语句所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部