从键盘获取输入,使用 Scanner
读取输入,主要依靠 Java Scanner
类获取输入信息。
import java.util.Scanner; // 需要导入 util 包
Scanner input = new Scanner(System.in);
String str1 = input.next();
String str2 = input.nextLine(); // 获取字符串
int number1 = input.nextInt(); // 获取整数
float number2 = input.nextFloat(); // 获取浮点数据
//循环输入
while (input.hasNextInt()) {
int tmp = input.nextInt();
}
System.out.println(tmp); // 与println效果相同
input.close(); // 掉用完成关闭方法
一般通过 Scanner 类的 next()
与 nextLine()
方法获取输入的字符串,在读取前我们一般使用 hasNext
与 hasNextLine
判断是否还有输入的数据。
next() 与 nextLine()的区别
next()
nextLine()
在控制台进行输出
System.out.println("Hello Java"); // 输出后换行
System.out.print("Hello Java\n"); // 与println效果相同
System.out.print("Hello Java"); // 输出不换行
System.out.printf("%d",10); // 格式化的输出,输出方式与C语言基本相同
转换符 | 类型 | 使用方法 | 输出结果 |
---|---|---|---|
d | 十进制整数 | (“%d”,10) | 10 |
x | 十六进制整数 | (“%x”,10) | A |
o | 八进制整数 | (“%o”,10) | 12 |
f | 定点浮点数 | (“%f”,100f) | 100.000000 |
e | 指数浮点数 | (“%e”,100f) | 1.000000e+02 |
g | 通用浮点数 | (“%g”,100f) | 100.000 |
a | 十六进制浮点数 | (“%a”,100) | 0x1.9p6 |
s | 字符串 | (“%s”,10) | 10 |
c | 字符 | (“%c”,‘1’) | 1 |
b | 布尔值 | (“%b”,10) | true |
h | 散列码 | (“%h”,10) | a |
% | 百分号 | (“%.2f%%”,2/7f) | 10 |