温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何在Java中使用BufferedReader类获取输入的字符串

发布时间:2021-02-22 16:02:02 来源:亿速云 阅读:426 作者:Leah 栏目:编程语言

如何在Java中使用BufferedReader类获取输入的字符串?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Java是什么

Java是一门面向对象编程语言,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序。

使用Scanner来取得使用者的输入很方便,但是它以空白来区隔每一个输入字符串,在某些时候并不适用,因为使用者可能输入一个字符串,中间会包括空白字元,而您希望取得完整的字符串。

您可以使用BufferedReader类别,它是java.io包中所提供的一个类,所以使用这个类时必须先import java.io包;使用BufferedReader对象的readLine()方法必须处理IOException异常(exception),异常处理机制是Java提供给程序设计人员捕捉程序中可能发生的错误所提供的机制,现阶段您处理IOException的方法是在main()方法后,加上 throws IOException,这在以后会再详细讨论为何要这么作。

BufferedReader在建构时接受一个Reader对象,在读取标准输入串流时,会使用InputStreamReader,它继承了 Reader类,您使用以下的方法来为标准输入串流建立缓冲区对象:

BufferedReader buf = new BufferedReader(
new InputStreamReader(System.in));

"new"关键字表示您要建构一个对象为您所用,BufferedReader buf表示声明一个类型为BufferedReader的对象变量,而new BufferedReader()表示以BufferedReader类建构一个对象,newInputStreamReader(System.in)表示接受一个System.in对象来建构一个InputStreamReader对象。

您可以在学过对象导向观念之后再来看这段,现阶段若您比较难理解,就记得上面的缓冲区读取对象建立方式,通常要使用BufferedReader来取得使用者的输入都是这么写的。

下面这个程序可以在文字模式下取得使用者输入(可包括空白字节输入),并重新显示在主控台中:

  • GetInput.java

import java.io.*;
public class GetInput {
	public static void main(String[]args) throws IOException {
		BufferedReader buf = newBufferedReader(
		                  newInputStreamReader(System.in));
		System.out.print("请输入一列文字: ");
		String text = buf.readLine();
		System.out.println("您输入的文字: " + text);
	}
}

readLine()方法会传回使用者在按下Enter键之前的所有字节输入,不包括最后按下的 Enter返回字节,程序的执行范例如下所示:

请输入一列文字: This is a test!
您输入的文字: This is a test!

看完上述内容,你们掌握如何在Java中使用BufferedReader类获取输入的字符串的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI