条件语句昨天已经总结过了,今天主要学习循环语句、中断与继续语句
以及分支语句和返回语句。对于编程语言来说,这几种语言大致没有多大
的改变,基本上都大致采用相同的方法。
1、循环语句(for、while、do—while)
循环语句的作用都是为了编程的方便,把对一个对象重复的相同的操作
通过循环语句来简单的表达出来,很简便。
for循环语句:格式 for(初始化表达式;判断表达式;递增/减表达式)
{执行语句 }
现在我们就来看看这个例子:
例:将x连续加10次
public class Control0
{
public static void main(String[] args)
{
//连续自加10次
int x = 0;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
System.out.println(x);
}
}
public class Control1 {
public static void main(String[] args)
{
for(int x = 0; x <= 10; x++)
{
System.out.println(x);
}
}
}
上面的两个程序所要表达的意思差不多,第二个是不是和第一个比简便的多。
注意:需要注意的一点是,递增/减表达式中可以有多个表达式,它们以逗号
间隔,而不是分号。
再来写一个九九乘法表:
public class Control2
{
public static void main(String[] args)
{
for(int x = 2;x < 10; x ++) //输出8行
{
for(int y = 1; y < 10; y ++) //输出9行
{
System.out.println(x + "*" + y + "=" +(x*y));
System.out.println(" ");
}
System.out.println(" ");
}
}
}
在上面的程序中,使用了两层嵌套for语句,还会有更复杂的程序。
for还有另一种语法:增强版for for(type 变量名:集合变量名){ }
while循环语句: 格式 while(条件)
{目的一;目的二;……}
while的意思是“当”,也就是说while语句中要先判断条件,判断真假,真就执行
循环体,假就跳出循环执行循环体外面的语句。
例:试编写程序实现输出1~100间的整数,它是3的倍数但不是5的倍数,也不
是9的倍数。
public class Control2
{
public static void main(String[] args)
{
int x = 1;
// 判断是否在100以内,并且是3的倍数
while(((3 * x > 1)&&(3 * x < 100)))
{
if((3 * x) % 5 != 0) { //然后再判断这些数是否不是5的倍数
if((3 * x) % 9 != 0){ //最后判断这些数是否不是9的倍数
System.out.println(3 * x);
}
}
x ++;
}
}
}
do-while循环语句:格式 do{ 语句 ;语句;……;
} while(条件);
while语句是先进行条件判断,再执行大括号内的循环体。do-while语句与while
语句不同的是,它先执行大括号内的循环体,再判断条件,如果条件不满足,
下次不再执行循环体。
那好我们再看一个例子:
public class Control3
{
public static void main(String[] args)
{
int x = 1;
do {
// 先判断这个数是否是3的倍数,并且是否不是5的倍数
if((3 * x) % 5 != 0) {
// 再判断是否不是9的倍数
if((3 * x) % 9 != 0) {
System.out.println(3 * x);
}
}
x ++;
//最后判断是否在100以内
} while(((3 * x >1)&&(3 * x < 100)));
}
}
和上面的例子是一样的,但是看清楚,用的是do-while语句。
2、中断与继续语句(break与continue)
break语句:
“break”表示中断控制,用来强行退出程序的循环体部分。
//通过System语句可以将数据打印出来
public class Control4
{
public static void main(String[] args)
{
int i = 1;
while(i <= 10) //循环
{
System.out.println(i);
i ++;
if(i > 5)
{break;} //退出
}
}
}
结果是:1 2 3 4 5 到6的时候,6大于5,强行退出。
break语句是强行中断循环体,并退出。
continue语句:
“continue”表示连续语句,也是用在循环体中,继续语句是用于终止当前循
环体,返回到循环体开始处,接着开始新的循环。
例如:
///只在奇数时,才输出,偶数时,会退出本次循环
public class Control5
{
public static void main(String[] args)
{
for(int i=1;i<10;i++)
{
if(i%2==0)
{continue;} //继续语句
System.out.println(i);
}
System.out.println("退出来了");
}
}
结果是:1 3 5 7 9 退出来了
中间的2 4 6 8全部都终结了,然后又从循环体开始处再来。
3、分支语句(switch)
如果程序需要判断条件的时候,可以用条件语句(if/else),但是条件太多了的
话用条件语句还是很麻烦。这个时候就可以用switch语句。
switch语句:
格式 switch(整数因子)
{ case 整数值 1:语句;break;
case 整数值 2:语句;break;
case 整数值 3:语句:break;
……
default:语句;
}
ublic class Control6
{
public static void main(String[] args)
{
int i = 8;
switch(i) //选择语句
{
case 1: System.out.println("是一月份"); break; //退出语句
case 2: System.out.println("是二月份"); break;
case 3: System.out.println("是三月份"); break;
case 4: System.out.println("是四月份"); break;
case 5: System.out.println("是五月份"); break;
case 6: System.out.println("是六月份"); break;
case 7: System.out.println("是七月份"); break;
case 8: System.out.println("是八月份"); break;
case 9: System.out.println("是九月份"); break;
case 10: System.out.println("是十月份"); break;
case 11: System.out.println("是十一月份"); break;
case 12: System.out.println("是十二月份"); break;
default: System.out.println("fault"); break; //默认语句
}
}
}
用if/else写的话得有多麻烦,也混乱的多,这样看起来也很有层次感。
4、返回语句(return)
返回语句用return来表示,也有终止程序的意思,可以返回数值,一般放在方法
的最后面。
例如:
public void set(int a,int b)
{
i = a * b;
return; //默认语句
}
public int set()
{
return i = a*b;//返回值
}
今天总结的大致就这些了。