Java循环结构-for,while以及do…while
如果您需要同样的操作执行多次,那么就需要使用到循环结构,java中有三种循环结构:
- for 循环
- while 循环
- do…while 循环
for 循环
虽然大部分循环都是用 while 或者 do…while,但是java也支持使用 for 循环,for 循环可以使一些代码变得简单,for 循环执行的次数实在执行前就确定的。
关于 for 循环有以下几点说明:
- 执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
- 检测布尔表达式的值。如果为 true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
- 执行一次循环后,更新循环控制变量。
- 再次检测布尔表达式。循环执行上面的过程。
具体格式如下
for(初始值;布尔表达式;更新){
//代码语句
}
实例为
package cn.work;
public class Work1 {
public static void main(String[] args) {
int n = 0;
for (int i = 0; i <=100 ; i++) {
if (i%2==0){
n = n + i;
}
}
System.out.println("100以内的偶数和为"+n);
}
}
while 循环
while 循环是最基本的循环,如果布尔表达式为true,那么循环酒会一直执行下去,它的具体格式为
while( 布尔表达式 ) {
//循环内容
}
实例为
package cn.work;
public class Work2 {
public static void main(String[] args) {
int i = 0;
int n = 0;
while(i<=100){
i++;
if(i%2==0){
n = n+i;
}
}
System.out.println("100以内的偶数和为"+n);
}
}
do…while 循环
do…while 循环和while 循环最大的区别就是,当初始值不满足循环条件的时候,while 循环一次都不会操作,do While 循环不管在什么情况下都至少执行一次。
其具体结构为
do {
//代码语句
}while(布尔表达式);
do…while循环的布尔表达式在循环体之后,所以语句块在检测布尔表达式之前已经执行了,而 while循环和for循环的循环体在语句块之前。
实例为
package cn.work;
public class Work3 {
public static void main(String[] args) {
int i = 0;
int n = 0;
do {
i++;
if(i%2==0){
n = n + i;
}
}while(i<=100);{
System.out.println("100以内的偶数和为:"+n);
}
}
}
增强for 循环
java5 中引用了一种主要用于数组的增强型 for 循环
增强for 循环语法格式如下
for(声明语句 : 表达式)
{
//代码
}
**声明语句:**声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
**表达式:**表达式是要访问的数组名,或者是返回值为数组的方法。
实例为
package sc.Work;
public class Work {
public static void main(String[] args) {
int [] arr = new int[5];
arr[0]= 99;
arr[1]= 85;
arr[2]= 82;
arr[3]= 63;
arr[4]= 60;
for (int i : arr) {
System.out.print(i+"\t");
}
}
}
结果为
break
break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。
break 跳出最里层的循环,并且继续执行该循环下面的语句。
其实例为
package cn.home;
public class Work4 {
public static void main(String[] args) {
int n = 0;
for (int i = 1; i <= i+1; i++) {
if(i%3==0&&i%7==0){
n++;
if(n==35){
System.out.println("第35个数是:"+i);
break;
}
}
}
}
}
continue
- continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。
- 在 for 循环中,continue 语句使程序立即跳转到更新语句。
- 在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。
实例为
package cn.home;
public class Work2 {
public static void main(String[] args) {
int a = 0;
for (int i = 0; i <= 100; i++) {
if(i % 100 % 10 == 3){
continue;
}else{
a = a + i;
}
}
System.out.println("整数1~100的累加值,但要求跳过所有个位为3的数的总和是:"+a);
}
}