简述java中流的概念和划分_Java中流的概念详解

流的分类:

fff6c98081bf8904098fb5e1bd59ff4b.gif

按流向:输入流,输出流

按数据单位:

字节流(一次读入或读出是8位二进制,即一个字节)

fff6c98081bf8904098fb5e1bd59ff4b.gif

字符流(一次读入或读出是16位二进制,即一个字符)

fff6c98081bf8904098fb5e1bd59ff4b.gif

按处理类型:

节点流(直接与数据源相连,读入或读出)

fff6c98081bf8904098fb5e1bd59ff4b.gif

处理流(与节点流一块使用,在节点流的基础上,再套接一层,套接在节点流上的就是处理流)

fff6c98081bf8904098fb5e1bd59ff4b.gif

对文件进行操作:

FileInputStream:字节输入流

FileOutputStream:字节输出流

FileReader:字符输入流

FileWriter:字符输出流

对管道进行操作:

PipedInputStream、PipedOutputStream(主要用于线程操作)

PipedReader、PipedWriter

字节/字符数组:

ByteArrayInputStream、ByteArrayOutputStream(在内存中开辟了一个字节数组)

CharArrayReader、CharArrayWriter(在内存中开辟了一个字符数组)

Buffer缓冲流(避免每次直接读取硬盘):

BufferedInputStream、BufferedOutputStream

BufferedReader、BufferedWriter

转化流:InputStreamReader、OutputStreamWriter

数据流:DataInputStream、DataOutputStream(数据流可以直接输出float类型或long类型,提高了数据读写的效率)

打印流:printStream,printWriter(一般是打印到控制台,可以进行控制打印的地方)

对象流:ObjectInputStream、ObjectOutputStream(把封装的对象直接输出,而不是一个个再转换成字符串再输出)

序列化流:SequenceInputStream(把对象直接转换成二进制,写入介质中)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值