java 从控制台读取输入使用的是 java.util.Scanner 类:通过创建Scanner对象并传入System.in(标准输入流)从控制台读取数据:
// 从控制台读取一个字符串和一个整数的例子
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in); // 创建Scanner对象
System.out.print("Input your name: "); // 打印提示
String name = scanner.nextLine(); // 读取一行输入并获取字符串
System.out.print("Input your age: "); // 打印提示
int age = scanner.nextInt(); // 读取一行输入并获取整数
System.out.printf("Hi, %s, you are %d\n", name, age); // 格式化输出
}
}
运行结果:
笔试题中经常要用到此类输入方式,举个简单的例子:设计一个程序,输入上次考试成绩和本次考试成绩,然后输出成绩提高的百分比,保留两位小数位(例如,10.55%)。
public class scanner {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter your last test score:");
float lastScore = scanner.nextFloat();
if (lastScore == 0){
System.out.println("The last test score cannot be 0");
return;
}
System.out.print("Enter your score for this test:");
float thisScore = scanner.nextFloat();
float improvementPercentage = (thisScore - lastScore) / lastScore;
System.out.printf("The percentage of improvement in grades = %.2f%%",improvementPercentage * 100);
}
}
运行结果: