Java 基础(从键盘获取变量)
从键盘获取变量
在 Java 中使用 Scanner 类从键盘获取不同类型的变量,步骤:
- 导包: import java.util.Scanner;
- Scanner 的实例化 Scanner scan = new Scanner(System.in);
- 调用 Scanner 类的相关方法(next()/nextXxx()),来获取指定类型的变量
注意:
需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配时,会报异常: InputMisMatchException 导致程序终止。
class ScannerTest{
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入你的姓名:");
String name = scan.next();
System.out.println(name);
System.out.println("请输入你的年龄:");
int age = scan.nextInt();
System.out.println(age);
System.out.println("请输入你的体重:");
double weight = scan.nextDouble();
System.out.println(weight);
System.out.println("是否结婚?(true/false)");
boolean isMarry = scan.nextBoolean();
System.out.println(isMarry);
System.out.println("请输入你的性别:(男/女)");
String gender = scan.next();
char genderChar = gender.charAt(0); //获取索引为0位置上的字符
System.out.println(genderChar);
}
}
针对 if-else 条件表达式。
- 如果多个条件表达式之间是"互斥"关系(或没有交集的关系),哪个判断和执行语句声明在上面还是下面,无所谓。
- 如果多个条件表达式之间有交集的关系,需要根据实际情况,考虑清楚应该将哪个结构声明在上面。
- 如果多个条件表达式之间有包含的关系,通常情况下,需要讲范围小的声明在范围大的上面。否则,范围小的就没有机会执行。
import java.util.Scanner;
class IfTest2 {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
System.out.println("请输入小鹏的期末成绩: (0-100)");
int score = scan.nextInt();
if(score == 100){
System.out.println("奖励一辆BMW");
} else if ( score > 80 ){ // score > 80 && score <= 99
System.out.println("奖励一台 Iphone 手机");
} else if ( score > 60 ){ // score > 60 && score <=80
System.out.println("奖励一台 ipad");
} else {
System.out.println("什么奖励也没有");
}
}
}
import java.util.Scanner;
class IfTest3 {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个整数");
int num1 = scanner.nextInt();
System.out.println("请输入第二个整数");
int num2 = scanner.nextInt();
System.out.println("请输入第三个整数");
int num3 = scanner.nextInt();
if(num1 >= num2){
if(num3 >= num1){
System.out.println(num2 + "," + num1 + "," + num3);
} else if( num3 <= num2){
System.out.println(num3 + "," + num2 + "," + num1);
} else {
System.out.println(num2 + "," + num3 + "," + num1);
}
} else {
if(num3 >= num2){
System.out.println(num1 + "," + num2 + "," + num3);
} else if( num3 <= num1){
System.out.println(num3 + "," + num1 + "," + num2);
} else {
System.out.println(num1 + "," + num3 + "," + num2);
}
}
}
}