系统输出流、 系统输入流

本文深入探讨了Java中System类的输入输出流概念,详细解释了标准输出(System.out)、错误输出(System.err)和标准输入(System.in)的功能及使用方法。通过实例演示了如何使用这些流进行屏幕输出和接收用户输入。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在System类中定义了三个操作的常量。

  1. 标准输出(显示器) : public final static PrintStream out
  2. 错误输出 : public final static PrintStream err
  3. 标准输入(键盘):public final static InputStream in

一、系统输出流

由于System.out是PrintStream的实例化对象,而PrintStream又是OutputStream的子类,所以可以直接使用System.out直接为OutputStream实例化,这个时候OutputStream输出的位置将变为屏幕。
系统输出一共有两个常量:out、err,并且这两个常量表示的都是PrintStream类的对象。

  1. out输出的是希望用户能看到的内容
  2. err输出的是不希望用户看到的内容,会在屏幕显示红色
范例:使用System.out为OutputStream实例化。
public class TestPrintf {
    //输出到屏幕
    public static void main(String[] args) throws Exception {
        OutputStream out = System.out;
        out.write("ee".getBytes());
    }
}

二、 系统输入流

//直到用户输入完成(按下回车),
//程序才能继续向下执行。
public class TestPrintf {
    public static void main(String[] args) throws IOException {
        InputStream in = System.in;
        byte[] data = new byte[1024];
        System.out.print("输出信息");
        int temp = in.read(data);
        System.out.println("输出 " + new String(data, 0, temp));

    }
}
public class TestPrintf {
    public static void main(String[] args) throws IOException {
     InputStream in = System.in;
        ByteArrayOutputStream bos = new ByteArrayOutputStream();
        byte[] data = new byte[10];
        System.out.print("请输入信息:");
        int temp = 0;
        while ((temp = in.read(data)) != -1) {
            // 保存数据到内存输出流中
            // 这里面需要用户判断是否输入结束
            bos.write(data, 0, temp);
            if (temp>data.length) {
                break;
            }
            in.close();
            bos.close();
            System.out.println("输出内容为:"+new String (bos.toByteArray()));
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值