一、循环结构
顺序结构的程序语句只能被执行一次。如果想要使同样的操作执行多次,就需要使用循环结构。java中有三种主要的循环结构,分别是while循环、do…while循环、for循环。另外,在java5中引用了一种主要用于数组的增强for循环。
1.1 while语句
while是最基本的循环,只要布尔表达式是true,循环体就一直执行下去。语法格式如下:
while(布尔表达式){
循环体语句
}
例:while语句应用实例
public class Test{
public static void main(String[] args){
int x = 20;
while(x<30){
System.out.println("x="+x);
x++;
}
}
}
运行结果如图所示
1.2 do …while循环
do…while循环与while循环相似,不同的是,do…while循环会至少执行一次。语法如下:
do{
循环体
}while(布尔表达式);
注意:布尔表达式在循环体的后面所以在判断之前已经执行了一次循环体。
例:do…while 语句应用实例
public class Test{
public static void main(String[] args){
int x =1;
do{
System.out.println("x = "+x);
x++;
}while(x<=4);
}
}
运行结果如图:
1.3 for语句
for循环的结构更加的简单。for循环执行的次数是在执行前就确定的。语法格式如下:
for(初始化表达式;循环条件;循环控制变量){
循环体
}
说明:
- 最先执行初始化步骤。可以声明一种类型,可以初始化一个或者多个循环控制变量,也可以是空语句。
- 检查循环变量的值,如果为true,执行循环体;如果为false,终止循环,执行循环体之后的语句。
- 执行一次循环后,跟新循环控制变量,再次检测布尔表达式是否满足。
例: for语句应用实例
public class Test{
public static void main(String[] args){
for(int x = 10; x<20; x++){
System.out.print("x = "+x);
System.out.print("\n"); //换行
}
}
}
运行结果如图所示:
1.4 增强for语句
java5中引用增强for循环,语法如下:
for(声明语句:表达式){
}
- 声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块内,其值与此时的数组元素的值相等。
- 表达式:是要访问的数组名,或者是返回值为数组的方法。
例:增强for应用实例
public class Test{
public static void main(String[] args){
int[] numbers = {10,20,30,40,50};
for (int x :numbers){
System.out.print("x = "+x);
System.out.print("\n"); //换行
}
System.out.print("\n"); //换行
String[] name = {"tom","junk","lily"};
for(String x :name){
System.out.print("x = "+x);
System.out.print("\n"); //换行
}
}
}
运行结果如图所示:
二、跳转语句
在java中,支持三种跳转语句:break、continue、return。这些语句把控制转移到程序的其他部分。
2.1 break语句
break语句主要使用在循环语句或者switch语句中,用来跳出整个语句块。语法格式如下:
break;
在java中,break有三种作用
- 在switch语句中,它用来终止一个语句序列
- 它能被用来退出一个循环
- 它能作为一种“先进”的goto语句来使用
例: break语句应用实例
public class Test{
public static void main(String[] args){
int x = 1;
while(x<=4){
System.out.println("x="+x);
if(x==3){
break;
}
x++;
}
}
}
运行结果如图所示:
在本案例中,通过while循环显示x的值,当x等于3时,使用break语句跳出循环,所以x=4没有出现。、
2.2 continue语句
continue语句适用于任何循环控制结构中,作用是让程序立刻跳转到下一次循环的迭代。
例:计算100以内的奇数之和
public class Test{
public static void main(String[] args){
int x = 0;
for (int i = 0;i<=100;i++){
if(i%2==0){ // i为偶数时不累加
continue;
}
x+=i; // x和i累加
}
System.out.println("x="+x);
}
}
运行结果如图所示
2.3 return语句
return语句无须判断条件即可发生。主要有两个用途
- 用来表示一个方法的返回值(假设返回值类型不是void)
- 导致该方法退出并返回值
根据方法的定义,每一个方法都有返回类型,该类型可以是基本类型,也可以是对象类型,同时每一个方法都必须有一个结束标志,return起到了这个作用。在返回类型为void的方法中有一个隐含的return语句,所以可以省略不写。