精通 Java 输入输出:打印、读取与格式化数据
Java 基本输入和输出
本教程讲解在 Java 中向用户显示输出和从用户获取输入的简单方法。
Java 输出
在 Java 中,可简单使用
System.out.println(); 或 System.out.print(); 或 System.out.printf();
向标准输出 (屏幕) 发送输出。
其中,
System是一个类out是publicstatic字段:接受输出数据。
若不理解无妨,后续章节将讨论 class、public 和 static。
示例:输出一行文本。
class AssignmentOperator {
public static void main(String[] args) {
System.out.println("Java programming is interesting.");
}
}
输出:
Java programming is interesting.
此处使用 println() 方法显示字符串。
println()、print() 和 printf() 的区别
print()- 打印引号内的字符串。println()- 类似print()打印字符串,随后光标移至下一行开头。printf()- 提供字符串格式化 (类似 C/C++ 的 printf)。
示例:print() 和 println()
class Output {
public static void main(String[] args) {
System.out.println("1. println ");
System.out.println("2. println ");
System.out.print("1. print ");
System.out.print("2. print");
}
}
输出:
1. println 2. println 1. print 2. print
上例演示了 print() 和 println() 的工作方式。了解 printf() 请访问 Java printf()。
示例:打印变量和字面量
class Variables {
public static void main(String[] args) {
Double number = -10.6;
System.out.println(5);
System.out.println(number);
}
}
运行程序,输出:
5 -10.6
显示整数、变量等时无需引号。
示例:打印拼接字符串
class PrintVariables {
public static void main(String[] args) {
Double number = -10.6;
System.out.println("I am " + "awesome.");
System.out.println("Number = " + number);
}
}
输出:
I am awesome. Number = -10.6
注意此行:
System.out.println("I am " + "awesome.");
使用 + 运算符连接 (拼接) 两个字符串:"I am " 和 "awesome."。
同样,此行:
System.out.println("Number = " + number);
先求变量 number 的值,再将其拼接到字符串 "Number = "。
Java 输入
Java 提供多种获取用户输入的方式。本教程讲解使用 Scanner 类对象获取输入。
使用 Scanner 对象需导入 java.util.Scanner 包。
import java.util.Scanner;
了解更多包导入请访问 Java Import Packages。
然后创建 Scanner 类对象,用于获取用户输入。
// 创建 Scanner 对象
Scanner input = new Scanner(System.in);
// 从用户获取输入
int number = input.nextInt();
示例:从用户获取整数输入
import java.util.Scanner;
class Input {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入一个整数: ");
int number = input.nextInt();
System.out.println("你输入了 " + number);
// 关闭 scanner 对象
input.close();
}
}
输出:
请输入一个整数: 23 你输入了 23
上例创建名为 input 的 Scanner 对象,调用 nextInt() 方法获取用户整数输入。
类似地,可用 nextLong()、nextFloat()、nextDouble() 和 next() 分别获取 long、float、double 和 string 输入。
注意:使用 close() 关闭对象。输入完成后建议关闭 scanner 对象。
示例:获取 float、double 和 String 输入
import java.util.Scanner;
class Input {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
// 获取 float 输入
System.out.print("请输入 float: ");
float myFloat = input.nextFloat();
System.out.println("输入的 float = " + myFloat);
// 获取 double 输入
System.out.print("请输入 double: ");
double myDouble = input.nextDouble();
System.out.println("输入的 double = " + myDouble);
// 获取 String 输入
System.out.print("请输入文本: ");
String myString = input.next();
System.out.println("输入的文本 = " + myString);
}
}
输出:
请输入 float: 2.343 输入的 float = 2.343 请输入 double: -23.4 输入的 double = -23.4 请输入文本: Hey! 输入的文本 = Hey!
获取用户输入还有其他方式。了解更多 Scanner 请访问 Java Scanner。
java