Java控制台输入主要是通过System类和Scanner类配合使用的方式来实现的。它主要处理标准的输入、输出数据。
一、System类的理解
在Java中,System类是一个预设的类,属于java.lang包。它的in、out属性代表标准输入和输出设备,通常为控制台。out属性是PrintStream类型的,通常用于控制台输出;in属性是InputStream类型的,用于标准输入,通常为键盘输入。
// System类中in和out的使用 System.out.println("Hello, World!"); // 控制台输出 int a = System.in.read(); // 控制台输入,返回ASCII值
上述代码中用到的System.in.read()方法会读取控制台输入的一个字符,返回其ASCII码,但使用起来并不方便,所以我们常常结合使用java.util.Scanner类,方便解析基本类型和字符串。
二、Scanner类的使用
Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。下面示例中,我们创建一个Scanner对象,并用该对象接收从控制台输入的整数,然后输出到控制台。
import java.util.Scanner; // 导入Scanner类 public class Demo { public static void main(String[] args) { Scanner input = new Scanner(System.in); // 创建一个Scanner对象 System.out.println("请输入一个整数:"); int num = input.nextInt(); // 使用Scanner对象读取控制台输入的整数 System.out.println("你输入的整数是:" + num); input.close(); // 关闭Scanner对象 } }
上述代码中,我们首先创建了一个Scanner对象input,然后通过调用input的nextInt()方法来获取用户从控制台输入的整数。
三、Scanner类解析多种类型数据
实际上,Scanner类可以解析多种基本类型与字符串,常用方法有nextInt(), nextLong(), nextFloat(), nextDouble(), nextLine()等。让我们尝试一个例子,获取用户从控制台输入的一行文字。
import java.util.Scanner; // 导入Scanner类 public class Demo { public static void main(String[] args) { Scanner input = new Scanner(System.in); // 创建一个Scanner对象 System.out.println("请输入一行文本:"); String text = input.nextLine(); // 使用Scanner对象读取控制台输入的一行文本 System.out.println("你输入的文本是:" + text); input.close(); // 关闭Scanner对象 } }
上述代码中,我们通过调用input的nextLine()方法来获取用户从控制台输入的一行文本。
原创文章,作者:小蓝,如若转载,请注明出处:https://www.beidandianzhu.com/g/1251.html