程序流程控制
顺序结构
顺着代码书写规律,自上而下执行语句。
判断结构
if语句
三种表现形式:
1、if(条件表达式)<span style="white-space:pre"> </span>2、if(条件表达式) <span style="white-space:pre"> </span>3、if(条件表达式)
{ { {
执行语句; <span style="white-space:pre"> </span>执行语句; <span style="white-space:pre"> </span>执行语句;
} } }
else else if
{ {
执行语句; <span style="white-space:pre"> </span>执行语句;
<span style="white-space:pre"> </span> } <span style="white-space:pre"> </span> }
......
else
{
执行语句;
}
注:三元运算符是if else语句的简写格式,当if else运算后,有一个具体的结果时,可以用三元运算符。
if后面的大括号可以 省略,默认执行最靠近if的一条语句。
练习:
class IfText
{
public static void main(String[] args)
{
//需求:根据用户的指定的数据,判断该数据对应的星期,如:1对应星期一
int week = 1;
if (week == 1)
System.out.print(week + "数值对应的是星期一");
else if (week == 2)
System.out.print(week + "数值对应的是星期二");
else if (week == 3)
System.out.print(week + "数值对应的是星期三");
else if (week == 4)
System.out.print(week + "数值对应的是星期四");
else if (week == 5)
System.out.print(week + "数值对应的是星期五");
else if (week == 6)
System.out.print(week + "数值对应的是星期六");
else if (week == 7)
System.out.print(week + "数值对应的是星期日");
else
System.out.print(week + "数值没有对应的日期");
}
}
结果:
选择结构
switch语句
格式:switch(表达式)
{
case 取值1:执行语句;break;
case 取值2:执行语句;break;
......
default: 执行语句;break;
}
break用于结束switch语句。case可以多个取值共用一条执行语句。
if和switch的应用
if:1、对具体的值进行判断。
2、对区间判断。
3、对运算结果是boolean类型的表达式进行判断。
switch:1、对具体的值进行判断。
2、值的个数通常是固定的,对于几个固定的值判断,建议使用switch,其效率相对高点。
循环结构
while循环语句 格式:while(条件表达式){ 执行语句 }
do while循环语句 格式:do{执行语句}while(条件表达式);特点:无论条件是否满足,循环体都至少执行一次。
练习
class WhileText
{
public static void main(String[] args)
{
//获取1到10,10个数的和
int x = 1,s = 0;
while (x < 11)
{
s = s + x;
x++;
}
System.out.println(s);
}
}
结果
for循环 格式: for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;(循环体)
}
for和while的特点:
1、for和while可以互换。
2、格式上的不同,在使用上有点小区别。
如果需要通过变量来对循环进行控制,该变量只作为循环增量存在时,区别就体现出来了。
无限循环最简单的形式:while(true){} for(;;){}
什么时候使用循环结构呢?
当对某些代码执行很多次时,使用循环结构完成。
当对一个条件进行一次判断时,可以使用if语句。
当对一个条件进行多次判断时,可以使用while语句。
注意:
在使用循环时,一定要明确哪些语句需要参与循环,哪些不需要。
循环通常情况下,需要定义条件,需要控制次数。
for循环嵌套练习九九乘法表
class JiuJiu
{
public static void main(String[] args)
{
//用for循环嵌套,打印出九九乘法表
for (int x = 1; x <= 9 ; x ++ )
{
for ( int y = 1; y <= x ; y ++ )
{
System.out.print( y + "*" + x + "=" + y * x + " ");//用Tab键而不是空格
}
System.out.println();
}
}
}
结果:
转义字符是 \ ,\t是制表符,效果和Teb键一样
\b退格
\n回车,\r按下回车,在Windows中回车符是两个字符组成 \r\n. linux中是\n.
其他的流程控制语句
break:跳出。作用范围:要么是switch语句,要么是循环语句。
默认跳出所在的当前循环,如果出现了循环嵌套,break想要台哦出指定的循环,可以通过标号来完成。
continue:继续。作用范围:循环结构。作用效果是:结束本次循环,继续下次循环。