栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

标准的输入输出流测试 [Java]

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

标准的输入输出流测试 [Java]

标准的输入输出流的测试 这里我们通过两个程序来理解什么是标准的输入输出流以及标准的输入输出流在何种情况下使用

eg:1

问题: 从键盘输入一个字符串,要求将读取到的整行字符串转换为大写之后输出,然后继续进行输入操作,知道输入"e"或者输入"exit"的时候退出程序

  • 我们分析这个问题之后其实可以想到,这个问题的解决方法一共有两种:
    1. 使用Scanner来实现,调用Scanner类中的next()方法就可以读取从控制台输入的一个字符串
    2. 使用System.in来实现
      • System.in —> 转换流 —> BufferedReader(),然后调用BufferedReader类中的readLine()方法
package IO流.标准的输入输出流;

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


public class Demo1 {
    
    public static void main(String[] args) throws IOException {
        
        InputStreamReader isr = new InputStreamReader(System.in);

        
        BufferedReader br = new BufferedReader(isr);


        while(true){
            
            String data = br.readLine();
            //判断程序是否要终止
            if("e".equalsIgnoreCase(data) || "exit".equalsIgnoreCase(data)) {
                System.out.println("程序终止");
                break;
            }

            
            String upperCase = data.toUpperCase();
            System.out.println(upperCase);
        }

        
        br.close();
    }
}

eg:2.

问题:创建一个MyInput.java,包含从键盘读取byte,short,int,double ,float,boolean,String等数据类型的数据的方法

  • 我们的Scanner类就是完成了这样的一个功能
package IO流.标准的输入输出流;

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

public class MyInput {
    
    public static String readString(){
        
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String s = "";
        try{
            s = br.readLine();
        }catch(IOException e){
            e.printStackTrace();
        }
        return s;
    }
    //从键盘上读取byte类型的数据
    public static byte readByte(){
        //通过基本类型类型包装类通过parseXxx()方法将String类型的数据转换为对应的xxx类型
        
        //就比如这里通过使用Byte包装类中的parseByte()方法将String类型的数据转换为对应的byte类型
        return Byte.parseByte(readString());
    }
    public static short readShort(){
        //同上
        return Short.parseShort(readString());
    }
    public static int readInt(){
        //同上
        return Integer.parseInt(readString());
    }
    public static float readFloat(){
        //同上
        return Float.parseFloat(readString());
    }
    public static double readDouble(){
        //同上
        return Double.parseDouble(readString());
    }
    public static boolean readBoolean(){
        //同上
        return Boolean.parseBoolean(readString());
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/695068.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号