从小白到菜鸟,今天学的写的笔记别较少,上午讲的底层01代码的各种运算,没有太大的价值,开发中一般用不到,就没有往这个笔记上挪。
一、键盘录入之Scanner类
1.键盘录入:Scanner类,来自于java.util包,是jdk提供的类型,只要我们在程序中使用的类不是java.lang包下的,使用时都不能直接使用类名:String在java.lang包下,如果要使用Scanner这个类型名,有两种方式:
1)java.util,Scanner 写他的全名
2)导包:import java.util.Scanner;导包就是告诉程序,使用的这个类型在哪个位置存储,提供了位置,才可以使用。在程序中就可以直接使用了。
2.作用:在程序运行的过程中,可以使用Scanner类来实现获取从键盘输入的数据,提高数据来源灵活度。
3.Scanner类使用步骤:
第一步:导包
目的:为了让JVM定位到Scanner类型所在的具体位置
导入方式:类的声明之上使用关键字import,表示导入
import java.util.Scanner;
第二步:创建键盘录入对象,Scanner sc = new Scanner(System.in);
第三步:调用sc对象的nextInt方法,获取键盘录入的整数
int x = sc.nextInt();
第四步:使用x后续处理
案例:
import java.util.Scanner;
public class Demo04 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入第一个数字:");
int x = sc.nextInt();
System.out.print("请输入第二个数字:");
int y = sc.nextInt();
System.out.print("两数之和为:"+(x+y));
}
}
二、流程控制
(一)分支结构之if条件语句
1.if语句的第一种格式
格式:
if(布尔表达式){
语句体;
}
其他代码
说明:
1)if,关键字,表示如果的含义
2)if语句后面跟着小括号,里面必须是布尔类型的值;计算结果为true或false。
执行流程:
1)计算布尔类型表达式的值,要么true,要么false
2)如果计算为true,执行语句体;
3)如果计算为false,就不执行语句体
注意事项:
1)小括号后面不要加分号,一般来说,有左大括号,就没有分号,有分号,就没有左大括号。
2)如果if语句体只有一句代码,大括号可以省略。
案例
public class Demo07 {
public static void main(String[] args) {
int salary = 10000;
int workYear = 10;
if (workYear>5) {
salary += 3000;
}
System.out.println("调整后:"+salary);
}
}
2.if语句的第二种格式
格式:
if(布尔表达式){
语句体1;
}else{
语句体2;
}
其他代码
执行流程:
1)计算表达式的值
2)如果条件表达式的值为true,执行语句体1,执行完跳出if..else语句,执行后面的代码
3)如果条件表达式的值为false,执行语句体2,执行完跳出if..else语句,执行后面的代码
注意事项:
if中的语句体1和else中的语句体2,一定会执行其中一个,不可能权执行或者全不执行。
案例:
import java.util.Scanner;
public class Demo08 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个三位数字:");
int a = sc.nextInt();
int b = (a/100)*(a/100)*(a/100);
int c = (a%100/10)*(a%100/10)*(a%100/10);
int z = (a%10)*(a%10)*(a%10);
if((b+c+z)==a){
System.out.println(a+"是水仙花数");
}else{
System.out.println(a+"很普通");
}
}
}
3.if语句的第三种格式
格式:
if(布尔表达式1){
语句体1;
}else if(布尔表达式2){
语句体2;
}else if(布尔表达式3){
语句体3;
}
...
}else if(布尔表达式n){
语句体n;
}else{
语句体n+1;
}
执行流程:
1)计算条件表达式1,如果为true,就执行语句体1
2)如果条件表达式1为false,计算条件表达式2,如果为true,就执行语句体2
3)如果条件表达式2为false,就计算条件表达式3...
4)如果田间表达式全是false,就执行条件n+1
注意事项:
最后的else语句可以有也可以没有,如果有,语句体1~n+1一定会执行其中一个,如果没有else,就可以没有语句执行。
案例:
public class Demo09 {
public static void main(String[] args) {
int salary = 10000;
int workYear = 17;
if(workYear>=0&&workYear<5){
salary += 2000;
}else if(workYear>=5&&workYear<10){
salary += 3000;
}else if(workYear>=10&&workYear<15){
salary += 4000;
}else if(workYear>=15){
salary += 5000;
}else{
System.out.println("滚");
}
System.out.println(salary);
}
}
(二)分支结构之Switch开关语句
1.switch语法
switch:表示英文中的开关,每个条件都像一扇门,开着的,就进门执行,否则就到下一扇门判断。
格式:
switch(表达式){
case 常量1:
语句体1;
break;
case 常量2:
语句体2;
break;
...
case 常量n:
语句体n;
break;
default:
语句体n+1;
break;
}
其他代码
执行流程:
1)获得表达式的值,
2)表达式的值与那个case后面的常量值相等,就执行哪个case后面语句。
3)执行结束,break返回
案例:
import java.util.Scanner;
public class Demo10 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入一个0~7的数字:");
int day = sc.nextInt();
switch(day){
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;
default:
System.out.println("数据有误");
break;
}
}
}
本文介绍了Java中的键盘录入操作及流程控制,包括使用Scanner类进行数据输入和if条件语句、switch开关语句的应用。

882

被折叠的 条评论
为什么被折叠?



