java读取控制台输入_如何使用Java中的Scaner类从控制台读取输入?

22fec0e3f4e0588a1b6d50e12420be4e.png

侃侃尔雅

从控制台读取数据BufferedReader是同步的,因此可以安全地从多个线程对BufferedReader进行读取操作。可以指定缓冲区大小,也可以指定默认大小(8192)可以使用。对于大多数用途,缺省值都足够大。读行() « 只需从流或源逐行读取数据。一条线被下列任何一个人视为终止:\n,\r(或)\r\nScanner使用分隔符模式将其输入拆分为令牌,默认情况下该模式与空格(\s)匹配,并由Character.isWhitespace.« 在用户输入数据之前,扫描操作可能会阻塞,等待输入。 « 使用扫描仪(缓冲器大小=1024)如果您想从流中解析特定类型的令牌。 « 然而,扫描器并不是线程安全的。它必须在外部同步。Next()从这个扫描器中查找并返回下一个完整的令牌。nextInt()扫描输入的下一个令牌为int。电码String name = null;int number;java.io.BufferedReader in = new BufferedReader(new InputStreamReader(System.in));name = in.readLine();

 // If the user has not entered anything, assume the default value.number = Integer.parseInt(in.readLine());

  // It reads only String,and we need to parse it.System.out.println("Name " + name + "\t number " + number);

  java.util.Scanner sc = new Scanner(System.in).useDelimiter("\\s");name = sc.next();  

  // It will not leave until the user enters data.number = sc.nextInt(); 

  // We can read specific data.System.out.println("Name " + name + "\t number " + number);

  // The Console class is not working in the IDE as expected.java.io.Console cnsl = System.console();if (cnsl != null) {

    // Read a line from the user input. The cursor blinks after the specified input.

    name = cnsl.readLine("Name: ");

    System.out.println("Name entered: " + name);}流的输入和输出Reader Input:     Output:Yash 777          Line1 = Yash 777

     7            Line1 = 7Scanner Input:    Output:Yash 777          token1 = Yash

                  token2 = 777

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值