开发者

Java获取控制台输入的两种方法小结

目录
  • Java获取控制台输入的方法
    • 方法一、InputStreamReader
    • 方法二、Scanner
  • java接收控制台输入
    • 1.接收整数类型输入
    • 2.接收字符串类型输入
    • 3.接收单个字符输入

Java获取控制台输入的方法

在学习网络编程中,有需要从控制台输入数据,进行两个线程之间的通信,其中,涉及到了读取控制台输入的两种不同的操作,笔javascript者在这里进行hMLOEC记录,以供大家分享。

方法一、InputStreamReader

  • 本身只能单个字符地读取数据
  • 通过BufferedStreamReader包装后,存在缓存,支持整行整行地读取数据
  • 只能读取字符/字符串,如想获取其他类型的数据,仍需要进行类型转换

检测实例如下:

  public static User getUser2() throws IOException {
    Bhttp://www.devze.comufferedReader br = new
        BufferedReader(new InputStreamReader(System.in));
    System.out.println("请输入账号");
    String username = br.readLine();
    System.out.println("请输入密码");
    String passworhttp://www.devze.comd = br.readLine();
    br.close();
    return new User(username,password);
  }

方法二、Scanner

在获取控制台输入的方法中,创建Scanner对象来获取是最佳的方法,其有以下优势:

  • 可以获取各种类型的数据,如String、Int、Float等,且不需要进行转换
  • 支持诸多的文本扫描内容,如hasNextLine()方法可以检测是否存在下一行数据等

检测实例如下:

  public static Us开发者_Python开发er getUser(){
    Scanner scanner = new Scanner(System.in);
    System.out.println("请输入账号");
    String username = scanner.nextLine();
    System.out.println("请输入密码");
    String password = scanner.nextLine();
    return new User(username,password);
  }

java接收控制台输入

1.接收整数类型输入

public static void main(String[] args) {
java.util.Scanner sc=new Scanner(System.in);
  System.out.println("请输入将要计算阶乘的整数n:");
  int n=sc.nextInt(); //接收整数类型输入
  sc.close();
}

2.接收字符串类型输入

public static void main(String[] args) {
  java.util.Scanner sc=new java.util.Scanner(System.in);
  System.out.println("请输入需要判断是否为十进制的数字");
  String n=sc.nextLine();//接收字符串
  sc.close();
}

3.接收单个字符输入

法一》直接获取一个字符

public static void main(String[] args) throws Exception //注意抛出异常
{
  java.util.Scanner sc=new java.util.Scanner(System.in);
  System.out.println("请输入一个字符:");
  
   char n=(char)System.in.read(); //直接获取一个字符
    sc.close();
}

法二》先接收一个字符串,再接收其第一个字符

public static void main(String[] pythonargs) //注意 throws Exception可以不写
{
  java.util.Scanner sc=new java.util.Scanner(System.in);
  System.out.println("请输入一个字符:");
  char n=sc.next().charAt(0);//先从控制台接收字符串,再接收它的第一个字符
  sc.close();
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜