先说一下 java流程控制语句的分类:
(1)顺序结构(是程序中最简单最基本的流程控制,没有特定的语句结构,就是按照代码的先后顺序,依次执行。程序中大多数的代码都是这样执行的)
(2)分支结构(if,switch)
(3)循环结构(for,while,do…while)
重点学习 if 语句
1、if 语句格式1
if(关系表达式){
语句体;
}
举例子:
public class IfTest1{
public static void main(String[] args){
int a = 10;
int b = 20;
// int b = 10;
if(a == b){
System.out.println("a和b相等。");
}
System.out.println("结束");
}
}
例子中a 明显不等于b,所以结果输出 “结束”。
如果 int b = 10;重新编译执行的结果:
2、if 语句格式2
if(关系表达式){
语句体1;
}else{
语句体2;
}
举例子:判断奇偶
/*
需求:
随机输入一个整数,判断奇偶。
思路:
(1)随机输入一个整数,需要导包 import java.util.Scanner;
创建对象Scanner sc = new Scanner(System.in);
接收数据 int i = sc.nextInt();
(2)判断奇偶,要么是偶数要么是奇数,采用if else 语句实现,除于2取余即可。
*/
//导包
import java.util.Scanner;
public class IfQiOu{
public static void main(String[] args){
System.out.println("请输入一个整数,开始判断奇偶性:");
//键盘录入数据
//创建对象,只有 sc 可以改变,其他不能变
Scanner sc = new Scanner(System.in);
//接收数据,只有 i 可以变,sc 与创建对象名称一直,其他不能变
int i = sc.nextInt();
//if 判断奇偶
if(i % 2 == 0){
System.out.println(i + "是偶数");
}else{
System.out.println(i + "是奇数");
}
}
}
编译完成后,我执行两次,输入两个数字:
3、if 语句格式3
if(关系表达式1){
语句体1;
}else if(关系表达式2){
语句体2;
}
...
else{
语句体n+1;
}
举例子:考试奖惩
/*
需求:小明快要期末考试了,小明爸爸对他说,会根据他不同的考试成绩,送他不同的礼物,假如你可以控制小明的得分,请用程序实现小明到底该获得什么样的礼物,并在控制台输出。
95-100分:山地自行车一辆
90-94分:游乐场玩一次
80-89分:变形金刚玩具一个
80分以下:胖揍一顿
程序编写:
1.导包
2.创建对象
3.接收数据
4.if...else if...判断*/
//1.导包
import java.util.Scanner;
public class IfKaoshi{
public static void main(String[] args){
//创建对象
Scanner sc = new Scanner(System.in);
System.out.println("请输入小明的成绩(0-100):");
//接收数据
int score = sc.nextInt();
//if...else if...判断
if(score > 100 || score < 0){
System.out.println("不在正常成绩范围0-100之内!请正确输入");
}else if(score >= 95 && score <= 100){
System.out.println("奖励山地自行车一辆!");
}else if(score >= 90 && score <= 94){
System.out.println("奖励游乐场玩一次!");
}else if(score >= 80 && score < 90){
System.out.println("奖励变形金刚玩具一个!");
}else{
System.out.println("胖揍一顿!");
}
}
}
注意:一个程序是否健壮,就看它是否经受住正确数值、临界数值、错误数值的检验。所以程序中添加了0以下和100以上的条件。
编译后输入正确范围的数值:
输入临界值和错误数值: