Java 中的控制台2024年9月10日 | 阅读 15 分钟 在本节中,我们将学习关于Java 控制台的所有知识,即什么是控制台,我们如何使用控制台,如何实现控制台输出,如何使用控制台进行输入,等等。 什么是控制台?要运行程序,我们可能需要根据要求从程序员或用户那里获取输入。我们不能总是只从程序中获取输入。有时,我们也可以从控制台或终端获取输入。从控制台获取输入的这个过程是通过 Java 控制台的概念引入的。Java 编程语言提供了几种从控制台获取输入并在同一控制台上提供相应输出的方法。 Java 控制台使用 Java 控制台,我们可以考虑获取输入并显示输出。通常,控制台主要用于获取输入。有三种方法可以从 Java 控制台获取输入。它们是:
Java 中的 Scanner 类用于在程序中扫描输入的类称为 Scanner 类。我们通过在 Scanner 类中创建一个对象来使用该类获取程序中的输入。这是通过控制台扫描用户输入的最简单方法之一。它用于扫描 Java 中的所有正则表达式。Scanner 类位于 util 包中。因此,要使用 Scanner 类扫描输入,我们需要导入“ Java.util ”包。 Scanner 类的语法 在这里,“ Scanner ”被视为一个类,“ obj ”是在类中创建的一个对象。因此,为了扫描整个程序中的任何输入,我们可以使用在“ Scanner ”类中创建的这个对象。 有不同的方法用于扫描不同的数据类型。我们将使用的方法类型取决于我们要获取的输入的_数据类型_。Scanner 类中有八种方法,因为有八种通用的基本数据类型。 Scanner 类中的方法
一个演示 Scanner 类扫描输入的程序 输入 输出 You have entered an Integer number 5 You have entered a Float number 3.4 You have entered a String Hello You have entered a Boolean value true 上述程序及其输出的解释 最初,导入了必需的包“ util.Scanner ”,以便访问和实现“ Scanner ”类。考虑并声明了一个名为“ Demo ”的类,其中也声明了 main 部分。在 main 部分下,创建了一个名为“ obj ”的对象,该对象是“ Scanner ”类的实例,以便使用该对象“ obj ”来扫描元素。在成功创建对象“ obj ”之后,根据声明的数据类型,对象会逐一调用方法。例如,“ x ”是一个变量,其中对象“ obj ”调用了用于扫描整数值的“ nextInt() ”方法。同样,其余变量被分配了对象,调用它们各自的方法。最后,允许使用 print 语句打印所有值。这就是“ Scanner ”类的工作方式。 Scanner 类的优点
Scanner 类的缺点
Java 中的 BufferedReader 类这是从用户那里获取输入的一种经典方法(有时也使用控制台)。还引入了一个新语句“ InputStreamReader ”,与“ BufferedReader ”一起使用,以通过 BufferedReader 扫描输入值。让我们看看 BufferedReader 的机制,包括其语法,然后是一个程序。 BufferedReader 类的语法 BufferedReader 类中的方法
一个演示 BufferedReader 类扫描输入的程序 输入 输出 The entered String is: Hello The entered value of integer is: 10 The entered value of float is: 3.5 The entered value of double is: 9.88 上述程序及其输出的解释 最初,导入了必需的包“ io.BufferedReader ”、“ io.InputStreamReader ”以及通用包“ io.* ”,以便借助支持类“ InputStreamReader ”来访问和实现“ BufferedReader ”类。考虑并声明了一个公共类“ Demo ”,其中也定义了 main 部分。在 main 部分下,考虑了一个“ InputStreamReader ”类的对象“ obj1 ”,以支持“ BufferedReader ”类中的元素扫描,并通过使用对象“ obj1 ”,我们可以启动扫描类“ BufferedReader ”。 在成功创建对象“ obj1 ”之后,就启动了扫描类“ BufferedReader ”。创建了另一个对象“ obj2 ”,其中将“ InputStreamReader ”的对象,即“ obj1 ”,作为补充参数。由 BufferedReader 类中创建的对象,即“ obj2 ”,根据声明的数据类型逐一调用方法。例如,“ s ”是一个变量,其中对象“ obj2 ”调用了用于扫描 String 的“ readLine() ”方法。同样,其余变量被分配了对象,调用它们各自的方法。最后,允许使用 print 语句打印所有值。这就是“ BufferedReader ”类的工作方式。 BufferedReader 类的优点
BufferedReader 类的缺点 BufferedReader 类中存在的方法不是内置的,而是在使用时需要解析。 Java 中的 Console 类Java 中的“ Console ”类是从 Java 版本 1.5 开始引入的,并从该版本开始生效。它是 Java 编程语言中最受期待的用途之一。可以在“ Java.io ”包中访问“ Console ”类,该包是 Java 中所有程序构建所使用的基本包。在“ Console ”类中嵌入了多种方法。让我们在接下来的语句中学习所有这些方法。 使用 Java 中的“ Console ”类的一个主要优点是,在获取输入和显示输出时,像密码这样的机密数据或信息是隐藏的。这是在 Java 中首选 Console 类的主要原因。不仅是这个特性,控制台的可读方法也始终是同步的。但是,Console 类只能在命令提示符或终端上执行,而不能在任何其他 IDE 平台上执行。基本上,Java 中的“ Console ”类没有指定的语法。根据程序执行的目的和情况,“ Console ”类的语法和用法会有所不同。 Console 类中的方法
不仅这些方法,还有其他几种方法也是“ Console ”类的一部分。方法的用法取决于程序的运行方式以及程序想要执行的操作。 一个演示 Console 类扫描输入的程序 输入 输出 You can enter an input using Console now!! Enter the first input: Hello The String that you have entered is : Hello Let us find the reader object of the Console class: The reader object of the Console class is: Java.io.Console$LineReader@1be6f5c3 输入 2 输出 2 You can enter an input using Console now!! Enter the first input: World The String that you have entered is : World Let us find the reader object of the Console class: The reader object of the Console class is: Java.io.Console$LineReader@1be6f5c3 上述程序及其输出的解释 最初,导入了必需的包“ Java.io.Console ”和通用包“ io.* ”,以便访问和实现“ Console ”类。考虑并声明了一个公共类“ Demo2 ”,其中也定义了 main 部分。在 main 部分下,考虑了“ Console ”类,其中创建了一个对象“ c ”,以便支持“ Console ”类中的元素扫描,并通过使用对象“ c ”,我们可以启动扫描类“ Console ”。 在成功创建对象“ c ”之后,就启动了扫描类“ Console ”,并根据需要考虑 Console 类的相应方法。由 Console 类中创建的对象,即“ c ”,根据声明的数据类型和要执行的操作类型逐一调用方法。例如,如果您想获取 String 作为输入,则需要访问方法“ readLine() ”,该方法已在上述程序中完成。“ x ”是一个 String 变量,其中存储了通过对象“ c ”调用方法“ readLine() ”获取的输入。 此过程或方法用于扫描 String。同样,其余变量,即“ Reader ”中创建的“ r ”,被赋值,以便存储 Console 类的 reader 对象。通过这种方式,变量被赋值给对象,调用它们各自的方法。最后,允许使用 print 语句打印所有值。这就是“ Console ”类的工作方式。 一个演示 Console 类扫描密码的程序 输入 1 输出 1 You can enter a password using Console now!! Enter the input password: The password that you have entered is: nikki@1234567890 输入 2 输出 2 You can enter a password using Console now!! Enter the input password: The password that you have entered is: nikhitha#1234567890 上述程序及其输出的解释 最初,导入了必需的包“ Java.io.Console ”和通用包“ io.* ”,以便访问和实现“ Console ”类。考虑并声明了一个公共类“ Demo1 ”,其中也定义了 main 部分。在 main 部分下,考虑了“ Console ”类,其中创建了一个对象“ c ”,以便支持“ Console ”类中的元素扫描,并通过使用对象“ c ”,我们可以启动扫描类“ Console ”。 在成功创建对象“ c ”之后,就启动了扫描类“ Console ”,并根据需要考虑 Console 类的相应方法。由 Console 类中创建的对象,即“ c ”,根据声明的数据类型和要执行的操作类型逐一调用方法。由于程序的目的是获取密码输入,我们需要使用方法“ readPassword() ”。例如,在之前的程序中,您想获取 String 作为输入,所以您访问了方法“ readLine() ”。“ x ”是一个 String 变量,其中存储了通过对象“ c ”调用方法“ readLine() ”获取的输入。同样,声明了一个名为“ pass ”的变量,数据类型为“ char[] ”,并用于使用方法“ readPassword() ”获取输入。 由于密码非常机密,在获取密码输入时,输入将不会显示。为了知道密码,我们需要访问并调用属于基本类“ String ”的成员方法“ valueOf() ”。此过程或方法用于扫描密码而不泄露其值。为了存储密码的值,声明了一个 String 变量“ x ”。通过这种方式,变量被赋值给对象,调用它们各自的方法。最后,允许使用 print 语句打印所有值。这就是“ Console ”类如何用于扫描密码。这种使用方式或方法可以防止除用户之外的其他人未经授权的访问,因为密码是不可见的。 Console 类的优点
Console 类的缺点
下一主题Java 中的异步调用 |
Java 是一种多功能、面向对象的编程语言,它采用了一种称为方法绑定的概念。方法绑定是指将方法名称与实际方法实现连接的过程。Java 中有两种方法绑定:静态绑定和动态绑定。什么是方法...
阅读 4 分钟
在本节中,我们将学习什么是基数,并创建 Java 程序来查找基数。基数程序经常在 Java 编码面试和学术中出现。基数 基数用于表示数量。基数是计数词...
阅读 3 分钟
在 Java 中,`void` 是一个关键字。它允许我们创建不返回任何值的方法。换句话说,Java 中的 `void` 关键字是一种保留类型,主要用于指定方法不返回任何数据类型。声明一个...
阅读 3 分钟
Java 中的泛型代码是指为了与各种数据类型重用而创建的代码。泛型最初在 Java 5 中提供,此后已成为该语言的关键组成部分。它们使得编写可重用的代码成为可能,而这些代码可以...
阅读 4 分钟
Java 8 中的 distinct() 操作主要与流相关,用于从流中删除重复元素。Stream API 是在 Java 8 中推出的,用于提供与集合交互的更实用的方法,distinct() 操作就是其中之一。Syntax Stream<T> distinct() distinct() 的目的...
阅读 6 分钟
右截断素数无论从右向左连续删除数字,都会保持其素数状态,最终剩下一个个位素数。739 符合右截断素数条件,因为从 739 开始,我们先得到 73,然后得到 7,它们都是素数……
阅读 6 分钟
如何在 Java 中打印数组 Java 数组是一种数据结构,我们可以在其中存储相同数据类型的元素。数组的元素存储在连续的内存位置中。因此,我们可以存储固定数量的元素。有...
7 分钟阅读
Java 编程挑战是我们必须通过逻辑来解决并在任何编程语言中实现该逻辑的复杂问题。解决编程挑战可以培养逻辑思维和分析能力。如果您正在准备面试,您必须至少解决一次这些编程挑战。建议...
阅读 22 分钟
Tetris 游戏是有史以来最常见的计算机游戏之一。如今,我们也可以在手机上玩这个游戏。该游戏由 Alexey Pajitnov 于 1985 年设计和创建。他是一位俄罗斯程序员。有许多不同的变体...
11 分钟阅读
() 和 Line() 之间的区别 在 Java 中,java.util 包中提供的 Scanner 类是获取 int、double 和字符串等原始数据类型输入的最简单方法之一。在竞技编程中,时间是一个限制因素,使用 Scanner 类是...
阅读 4 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India