【Java 教程(原创)】014.循环语句、break 和 continue语句详解
本帖最后由 零度非安全 于 2017-1-21 14:13 编辑【Java 教程(原创)】索引帖
循环语句是根据条件,要求程序反复执行某些操作,直到程序“满意”为止。
for 循环语句
for 语句的语法格式如下:
for(表达式1;表达式2;表达式3){
若干语句
}
说明:“表达式 2”必须是一个求值为 boolean 型数据的表达式,复合语句称为循环体,“表达式 1”负责完成变量的初始化;“表达式 3”用来修饰变量,改变循环条件。我还是通过栗子来给鱼油们说清楚。
下面这个栗子是计算 8 + 88 + 888 + 8888 + ···的前 12 项的和。
运行效果如下:
栗子代码如下:
forUse.java
public class forUse{
public static void main(String args[]){
long sum = 0,a = 8,item = a,n = 12,i = 1;
for(i = 1;i <= n;i++){
sum = sum + item;
item = item * 10 + a;
}
System.out.println(sum);
}
}
while 循环语句
while 语句的语法格式如下:
while(表达式){
若干语句
}
说明:表达式为循环条件,该表达式是一个求值为 boolean 类型的数据。计算表达式的值,若果该值为 true,则执行循环体,否则结束 while 循环。
do-while 循环语句
do-while 循环语句的语法格式如下:
do{
若干语句
}while(表达式);
说明:do-while 循环和 while 循环的区别是,do-while 的循环体至少被执行一次。我还是通过栗子来解释下。
下面这个例子用 while 语句计算 1 + 1/2! + 1/3! + 1/4! + ···的前 20 项的和。
运行效果如下:
栗子代码如下:
whileUse.java
public class whileUse{
public static void main(String args[]){
double sum = 0,item = 1;
int i = 1,n = 20;
while(i <= n){
sum = sum + item;
i = i + 1;
item = item * (1.0/i);
}
System.out.println("sum = " + sum);
}
}
break 和 continue 语句
break 和 continue 语句是用关键字 break 和 continue 加上分号构成的语句,例如:
break;
在循环体中可以使用 break 语句和 continue 语句。在一个循环中,例如循环 50 次的循环语句中,如果在某次循环中执行了 break 语句,那么整个循环语句就结束。如果在某次循环中执行了 continue 语句后面的语句,而转入进行下一次循环。
下面这个栗子使用了 break 和 continue 语句。前半部分计算 1 + 3 + 5 + 7 + 9的和,后半部分 输出 50 以内的素数。
运行效果如下:
栗子代码如下:
bcUse.java
public class bcUse{
public static void main(String args[]){
int sum = 0,i,j;
for(i = 0;i <= 10;i++){
if(i % 2 == 0){
continue;
}
sum = sum + i;
}
System.out.println("sum = " + sum);
for(j = 2;j <= 50;j++){
for(i = 2;i <= j/2;i++){
if(j % i == 0){
break;
}
}
if(i > j/2){
System.out.println("" + j + "是素数");
}
}
}
}
【特别注意】帖子中的栗子希望鱼油们能自觉的手动敲上去,不要单纯的复制粘贴保存,然后编译运行。
点我前往上一讲点我前往下一讲
稍微有点儿技术范儿了~{:10_256:} ~风介~ 发表于 2017-1-19 16:05
稍微有点儿技术范儿了~
一般一般{:7_141:} 2333 for循环里是不是不能放初始化语句。类似for(int i = 0; i <10; ++) 小小七 发表于 2017-1-20 14:58
for循环里是不是不能放初始化语句。类似for(int i = 0; i
可以的
for(int i = 0;i < 10;i++) 学习{:10_298:} 怎么没有多重for循环 谢谢讲解
页:
[1]