Java循环结构的,for循环,while和do...while循环
for循环
for循环的执行次数在执行之前就确定了
语法格式:
for(初始化;布尔表达式;更新){
}
执行步骤:
1.最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句
2.接下来检测布尔表达式的值.如果为true,循环体被执行.如果为false就终止循环,开始执行循环体后边的语句
3.执行一次循环后,更新循环控制变量
4.再次检测布尔表达式,循环执行上边的过程
案例:
package com.tedu.cn;
//这个类用来测试循环
public class Test_For {
public static void main(String[] args) {
for (int i=0;i<=8;i++){
System.out.println(i);
}
}
}
结果:
增强for循环
Java5引入了一种用于数组的增强for循环
语法格式:
for(声明语句:表达式){
//代码句子
}
案例:
package com.tedu.cn;
//测试增强for循环
public class Test_For1 {
public static void main(String[] args) {
int[] a = {1,3,4,6,7};
//声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。
//表达式:表达式是要访问的数组名,或者是返回值为数组的方法。
for (int x:a){
System.out.println(x);
}
}
}
while循环
案例:
猜数字大小–>while循环先判断再执行
package com.tedu.cn;
import java.util.Random;
import java.util.Scanner;
public class Test_Nums {
public static void main(String[] args) {
//随机数0-99
int random = new Random().nextInt(100);
System.out.println(random);
while(true){//死循环
String s = method(random);
System.out.println(s);
if(s=="猜对了")
break;//设置出口
}
}
public static String method(int n) {
String msg;
int rows = new Scanner(System.in).nextInt();
if (rows >n) {
msg="猜大了";
//System.out.println("猜大了");
} else if (rows < n) {
msg="猜小了";
// System.out.println("猜小");
} else {
msg="猜对了";
//System.out.println("猜对了");
}
return msg;
}
}
结果:
do…while循环
案例:
猜数字大小–>do…while循环先执行再判断,至少执行一次
package com.tedu.cn;
import java.util.Random;
import java.util.Scanner;
public class Test_Nums1 {
public static void main(String[] args) {
int random = new Random().nextInt(100);
System.out.println(random);
do{
String s = method(random);
System.out.println(s);
if (s=="猜对了"){
break;
}
}while(true);
}
public static String method(int n){
String msg;
int nums = new Scanner(System.in).nextInt();
if(nums>n){
msg = "猜大了";
}else if (nums<n){
msg = "猜小了";
}else {
msg = "猜对了";
}
return msg;
}
}
结果: