1.知识框图
32.案例:
1.值交换
public class valuechange {
public static int a;
public static int b;
public static void main(String[] args) {
change1();
change2();
changge3();
}
//利用异或的特性
private static void changge3() {
b=(a+b)-(a=b);
}
//数学运算法
private static void change2() {
a=a+b;
b=a-b;
a=a-b;
}
//一句话完成值交换
private static void change1() {
a=a^b;
b=a^b;
a=a^b;
}
}
</textarea>
注意:
上述值交换用的是定义全局变量a,b,这样就可以直接对方法中的a,b直接进行操作。如果定义的是局部变量,则需要在方法中用return语句返回修改后的值。
2.键盘录入三个数三个数,输出最大数
import java.util.Scanner;
public class Maxvalue {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入第一个数");
int a=sc.nextInt();
System.out.println("请输入第二个数");
int b=sc.nextInt();
System.out.println("请输入第三个数");
int c=sc.nextInt();
int max=(a>b)?a:b;
int maxf=(max>c)?max:c;
System.out.println("最大数为:"+maxf);
}
}
3.键盘录入成绩,输出成绩的等级
import java.util.Scanner;
public class grade {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int score = sc.nextInt();
if (score < 0 || score > 100) {
System.out.println("成绩输入错误");
} else if (score > 60 && score <= 70) {
System.out.println("成绩为c等级");
} else if (score > 70 && score <= 80) {
System.out.println("成绩为c等级");
} else if (score > 80 && score <= 90) {
System.out.println("成绩为c等级");
} else {
System.out.println("成绩为A等级");
}
}
4.switch语句应用
import java.util.Scanner;
public class switc {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int inr=sc.nextInt();
switch(inr)
{
case 1:
case 2:
System.out.println("上学啦");
case 3:
System.out.println("到课间啦");
case 4:
System.out.println("上课啦");
default:
System.out.println("输入错误");
}
}
}
3.注意的点
1.switch…case语句
a.case后面的值只能是常量,不能是变量
b.case穿透现象:case后不加braek语句,就会执行下一个case语句,知道运行完case语句。
c.switch()判断语句里不能为浮点数类型和boolean类型。
2.if语句和switch语句的应用场景
switch语句是对几个常量进行判断,if语句是对一个范围的量进行判断。