方式1:InputStreamReader+BufferedReader

 package my_package;

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

 public class Test {
     public static void main(String[] args) {
         InputStreamReader isr=new InputStreamReader(System.in);
         BufferedReader br=new BufferedReader(isr);
         try {
             //不加缓冲区,只能读取char的ASCII码值。回车表示输入结束
             String str=br.readLine();
             System.out.println(str);
         } catch (IOException e) {
             e.printStackTrace();
         }

     }

 }

此方式的读取方式十分有限,不能满足很多功能,不推荐使用。

方式2:使用Scanner

 package test;

 import java.util.Scanner;

 public class Test {
     public static void main(String[] args) {
         //System.in表示标准输入,即键盘输入
         Scanner sc=new Scanner(System.in);

         //定义分隔符(单个输入结束的标志),默认使用回车
         //sc.useDelimiter("\n");    //参数可以使String或者Pattern

         String str;

         //如果还有下一个输入项。hasNextXxx()表示判断是否还有某个基础数据类型的输入
         while(sc.hasNext()){
             //获取用户输入.nextXxx()表示某个基础数据类型的输入
             str=sc.next();
             System.out.println(str);
         }

     }
 }
 package test;

 import java.util.Scanner;

 public class Test2 {
     public static void main(String[] args) {
         Scanner sc=new Scanner(System.in);
         int i;
         //输入为int型的值时,才执行,否则break。比如下一个输入一个字符串,这个while就break了
         while(sc.hasNextInt()){
            i=sc.nextInt();
             System.out.println(i);
         }

     }

 }
 package test;

 import java.util.Scanner;

 public class Test3 {
     public static void main(String[] args) {
         Scanner sc=new Scanner(System.in);
         String str;
         //是否还有下一行输入
         while (sc.hasNextLine()){
             //读取一行,作为字符串返回
             str=sc.nextLine();
             System.out.println(str);
         }

     }

 }

功能较全,推荐使用。

Java 读取控制台输入的更多相关文章

  1. JAVA读取控制台的输入【转】

    前面介绍了使用IO类实现文件读写的示例,其实在很多地方还需要使用到IO类,这里再以读取控制台输入为例子来介绍IO类的使用. 控制台(Console)指无图形界面的程序,运行时显示或输入数据的位置,前面 ...

  2. (六)read读取控制台输入

    1.基本语法 read(选项)(参数) 选项: -p:指定读取值时的提示符: -t:指定读取值时等待的时间(秒). 参数 变量:指定读取值的变量名 2.案例实操 (1)提示7秒内,读取控制台输入的名称 ...

  3. java 获取控制台输入

    读取控制台输入 从控制台读取一行数据,返回值字符串 public class IO { public static void main(String args[]) throws IOExceptio ...

  4. Shell 脚本(四) ”read 读取控制台输入” 与 “函数”

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 八.read 读取控制台输入 1.基本语法 read(选项)(参数) 选项: -p: 指定读取值时的提示 ...

  5. shell专题(八):read读取控制台输入

    1.基本语法 read(选项)(参数) 选项: -p:指定读取值时的提示符: -t:指定读取值时等待的时间(秒). 参数 变量:指定读取值的变量名 2.案例实操 (1)提示7秒内,读取控制台输入的名称 ...

  6. java 通过控制台输入的数字打印菱形字母

    package com.rui.test; import java.util.Scanner; /** * @author sunshine * @version 1.0 * @date:2015年1 ...

  7. java接收控制台输入

    java控制台输入语句: Scanner sc = new Scanner(System.in); 通过一个变量,例如 int r; r = sc.nextInt();   例子: public st ...

  8. java扫描控制台输入

    由于因最近练习算法的需要,加上API文档中翻译的太过模糊,做了一些小测试,算是武断的记下一些个人结论. Scanner cin = new Scanner(System.in); 对于cin.next ...

  9. Java读取键盘输入

    三种方法分别如下: 方法一:从控制台接收一个字符,然后将其打印出来 import java.io.*; public static void main(String [] args) throws I ...

随机推荐

  1. QC9.2登陆时显示一个X号

    这个是因为浏览器安全设置的问题,具体解决步骤如下: 进入“工具-Internet选项”设置窗口,进入“高级”选项卡,将“安全”设置中的“启用内存保护减少联机攻击”选项的勾选去掉,然后应用并确定.重启浏 ...

  2. FFmpeg 的bug

    发现一个ffmpeg 的bug, 我用老版本的ffmpeg解码播视频,对同样的视频,音频部分得到的是6通道,一直有杂音 周末呢换了新版本的ffmpeg4.2的库,得到是4,6,8三个通道在切换,我修改 ...

  3. React 使用 if else 判断语句

    今天在写 React 时,在 render 的return中既然不能使用if判断语句,所以就整理一些在react中使用if 的方式,可根据自己的实际情况选择: 方式一: class LLL exten ...

  4. 阿里云k8s事件监控

    事件监控是Kubernetes中的另一种监控方式,可以弥补资源监控在实时性.准确性和场景上的缺欠.Kubernetes的架构设计是基于状态机的,不同的状态之间进行转换则会生成相应的事件,正常的状态之间 ...

  5. [数据结构 - 第3章] 线性表之单链表(C++实现)

    一.类定义 单链表类的定义如下: #ifndef SIGNALLIST_H #define SIGNALLIST_H typedef int ElemType; /* "ElemType类型 ...

  6. Vue脚手架菜鸟级错误 npm run dev

    ERROR Failed to compile with 1 errors Failed to resolve loader: stylus-loaderYou may need to install ...

  7. pandas 模块

    什么是pandas pandas是一个python的包,主要用来处理表格格式的文件,可以快速的对表格进行查询,过滤,合并等操作. pandas的简单使用 pandas读入table格式文件 #读入一个 ...

  8. Python Tkinter的学习

    Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macinto ...

  9. Java开发笔记(一百四十三)FXML布局的基本格式

    前面介绍了JavaFX的常见控件用法,虽然JavaFX控件比起AWT与Swing要好用些,但是一样通过代码编写控件界面,并没有提高什么开发效率.要想浏览界面的展示效果,都必须运行测试程序才能观看,即使 ...

  10. 如何理解 PHP的依赖注入(DI) 和 控制反转(IoC)

    名词解释: IoC - Inversion of Control 控制反转 DI - Dependency Injection 依赖注入 依赖注入和控制反转说的实际上是同一个东西,它们是一种设计模式, ...