Java杂谈之三种标准流

来源:互联网 发布:centos kvm使用 编辑:程序博客网 时间:2024/05/16 09:33

Java中对于IO操作有三种标准流:

System.out,System.err,System.in


其中通过标准输入流,只能读一个字节,所以一般要和Scanner合用

Scanner scan = new Scanner(System.in)

还有就是System.err与一般我们程序的线程不是同一个,所以你会发现下面代码中,

hello和error的输出结果的顺序不是固定的。


代码:

package JavaStream;import java.io.IOException;import java.io.InputStream;//三种标准流//System.out,System.err,System.in//但是System.in不能直接用public class StandardStream {public static void main(String[] args) throws IOException {System.out.println("hello");//System.err线程不同,所以结果error和hello的输出顺序每一次不一定相同System.err.println("error");//标准输入流,只能读一个字节//所以一般我们要用Scanner包一下InputStream in = System.in;int i = in.read();System.out.println((char)i);}}

同样我运行两次会出现下面两种不同的结果(输出顺序不同)

这就是前面所说的线程不同造成的。



0 0