* 理解程序控制的概念;
* 运用条件语句控制程序的执行;
* 运用循环语句控制语句的重复;
* 理解并使用关键字break和continue
学习内容——流程控制
* 选择控制
--使用 if 和 if...else
--嵌套if语句
--switch 语句
--条件表达式
* 循环控制
--循环: while, do, 以及for
--使用嵌套循环
--使用关键字 break 和 continueif 语句
if 语句
if (布尔表达式)
{
语句(组);
}
例如:
if ((i >= 0) && (i <= 10))
{
System.out.println("i is an " +
"integer between 0 and 10");
}
注意
- If 和 while 中的条件必须为条件表达式或者Bool型变量或者常量;
- 不能是整数
- 为了避免C中的问题
- =和= =的问题
If(x=1){}
If(x= =1){} - C的解决:if(1= =x){}
- Java的解决:if(x=1){} 错误
if...else 语句
if (布尔表达式)
{
布尔表达式为真时执行的语句(组);
}
else
{
布尔表达式为假时执行的语句(组);
}
if...else 例子
if (radius >= 0)
{
area = radius*radius*PI;
System.out.println("The area for the "
+ "circle of radius " + radius +
" is " + area);
}
else
{
System.out.println("Negative input");
}
if语句的嵌套
if (score >= 90.0)
grade = ‘A’;
else
if (score >=80.0)
grade = ‘B’;
else
if(score >= 70.0)
grade = ‘C’;
else
grade =‘D’;
试试吧!
设计一个计算抵押贷款程序,它读取用户输入的贷款额和年数,然后程序根据年数求得年利率,最后显示月偿还额和总偿还额。
7年:7.25%;
15年:8.5%;
30年:9%.
嵌套if语句
- 使用嵌套if语句
这个程序是读取年数和贷款额,并且计算每月的还款额和还款总数,假设利率是随年数变化的 - 注意事项
使用嵌套if语句时为避免产生不必要的逻辑错误,应该合理使用”{}”
条件表达式
if (x > 0) y = 1
else y = -1;
等价于
y = (x > 0) ? 1 : -1;
switch 语句
switch (year)
{
case 7: annualInterestRate = 7.25;
break;
case 15: annualInterestRate = 8.50;
break;
case 30: annualInterestRate = 9.0;
break;
default: System.out.println(
"Wrong number of years, enter 7, 15, or 30");
}

练习一下吧!
利用Switch将贷款程序改写;
while 循环
while 循环流程图

while 循环
while (循环条件continue-condition)
{
// 循环体;
}
例: 使用 while 循环
TestWhile.java
do 循环
do
{
// 循环体;
} while (循环条件);
do 循环流程图

for 循环
for (循环变量初始化;循环条件; 调整语句)
{
//循环体;
}
int i = 0;
while (i < 100)
{
System.out.println("Welcome to Java! ” + i);
i++;
}
例:
int i;
for (i = 0; i<100; i++)
{
System.out.println("Welcome to Java! ” + i);
}
for 循环流程图

break 和continue
break 关键字

continue 关键字

带标号的break语句
- break语句可以终止循环中的子语句和switch语句
- 一个无标号的break语句会把控制传给当前循环(while、do while、for和switch)的下一条语句
- 如果有标号,控制会被传递给带有这一标号的语句


