使用缓冲输入流优化数据输入能力

2021/04/20 19:04
阅读数 49

BufferedReader类

BufferedReader类提供的是一个缓冲字符输入流的概念,也就是说利用BufferedReader类可以很好的解决输入流数据的读取问题,这个类是在最初的时候提供的最完善的数据输入的处理(JDK1.5之前,JDK1.5后出了一个更很强大的类代替此类),之所以使用这个类来处理,是因为这个类中提供有一个重要的方法:

读取一行数据: public String readLine() throws IOException;

image.png
BufferedReader

将利用这个类实现键盘输入数据的标准化定义。

范例:实现键盘数据输入

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class JavaAPIDemo {
    public static void main(String[] args) throws Exception {
        BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
        System.out.print("请输入信息:");
        String msg=input.readLine();   //接收输入信息
        System.out.println("输入内容为:"+ msg);
        input.close();
    }
}
//请输入信息:马上就放假了,我们要一起开心的学习,不放假了!
//输入内容为:马上就放假了,我们要一起开心的学习,不放假了!

在以后的实际开发中经常会遇见输入数据的情况,而所有输入数据的类型都是通过String描述的,那么这样就方便了接收者进行各种处理。

范例:接收整型输入并且验证

import java.io.BufferedReader;
import java.io.InputStreamReader;
public class JavaAPIDemo {
    public static void main(String[] args) throws Exception {
        BufferedReader input=new BufferedReader(new InputStreamReader(System.in));
        System.out.print("请输入您的年龄:");
        String msg=input.readLine();   //接收输入信息
        if(msg.matches("\\d{1,3}")){    //是否由数字所组成
            int age=Integer.parseInt(msg);
            System.out.println("年龄为:"+age);
        }else{
            System.err.println("请确保您看懂了我的提示,不要随意输入,伤不起!");
        }
    }
}

对于现在的Java开发由键盘输入数据的情况并不多了,但是作为一些基础的逻辑训练还是可以使用键盘输入数据的,而键盘输入数据的标准做法(JDK1.5之前)就是上面的实现操作。实际开发中所有输入的数据全部都是字符串,这样可以方便验证与进行字符串的复杂处理。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部