当前位置: 首页 > article >正文

在Java中,获取输入内容可以通过多种方式实现,以下是三种常用的方式:Scanner、BufferedReader 和 Console 的具体代码示例

在Java中,获取输入内容可以通过多种方式实现,以下是三种常用的方式:ScannerBufferedReaderConsole 的具体代码示例。

1. 使用 Scanner

Scanner 类是用于解析基本类型和字符串的简单文本扫描器。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("Enter your name: ");
        String name = scanner.nextLine();
        System.out.println("Hello, " + name);
        scanner.close();
    }
}

2. 使用 BufferedReader

BufferedReader 类提供了一种简便的方法来读取文本行,通常与 InputStreamReader 一起使用。

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;

public class Main {
    public static void main(String[] args) {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        try {
            System.out.print("Enter your name: ");
            String name = reader.readLine();
            System.out.println("Hello, " + name);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                reader.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

3. 使用 Console

Console 类用于读取控制台输入,它提供了一个方便的方法来读取密码。

import java.io.Console;

public class Main {
    public static void main(String[] args) {
        Console console = System.console();
        if (console == null) {
            System.out.println("No console available.");
            return;
        }
        System.out.print("Enter your name: ");
        String name = console.readLine();
        System.out.println("Hello, " + name);
    }
}

请注意,Console 类可能在某些环境中(如某些IDE或没有控制台的应用程序)不可用。在这种情况下,它将返回 null

以上是三种在Java中获取输入内容的方式,你可以根据你的具体需求选择合适的方法。


http://www.kler.cn/news/285191.html

相关文章:

  • chromedriver下载地址
  • c# net8调用vc写的dll
  • 机械学习—零基础学习日志(如何理解概率论10)
  • 学习记录:js算法(二十):子数组最大平均数 I、无重复字符的最长子串
  • Linux(文件的查找和解压缩)
  • RelativeLayout相对布局
  • 使用 UniApp 实现摄像头视频流的接入并在页面上显示视频流
  • NC115.栈和排序_C++题解
  • python-word添加标题,段落,文字块
  • Web开发 Ajax 2024/3/31
  • 004、架构_计算节点
  • 科研绘图系列:R语言单细胞差异基因四分图(Quad plot)
  • 加密与安全_前后端通过AES-CBC模式安全传输数据
  • 【Python】运行tcl、perl程序
  • EasyExcel冲突问题,java.lang.NosuchFieldError: Factory
  • 《软件工程导论》(第6版)第4章 形式化说明技术 复习笔记
  • Xcode插件开发
  • 【机器学习】数据预处理-特征工程与特征选择
  • 数字芯片中I/O单元及电源domain布局中SIPI的考虑
  • 浅谈C#委托
  • zdppy+vue3+onlyoffice文档管理系统实战 20240828上课笔记 zdppy_cache框架完成和验证码框架继续优化
  • EmguCV学习笔记 VB.Net 第8章 图像分割
  • org.apache.commons.lang.math.NumberUtils#isNumber 解释
  • 大语言模型数据增强与模型蒸馏解决方案
  • 【最新华为OD机试E卷】空栈压数(200分)-多语言题解-(Python/C/JavaScript/Java/Cpp)
  • 【测试】——开发模型与测试模型
  • 黑神话 悟空 配置 Mac玩游戏
  • vue3中ref绑定的节点顺序错乱
  • day36
  • 【MySQL 12】事务管理 (带思维导图)