NIO中的Buffer的详解

1、首先Buffer缓冲区本质上就是一个可以读写数据的内存块,可以理解成是一个容器对象(含数组)
Channel 提供从文件、 网络读取数据的渠道,但是读取或写入的数据都必须经由 Buffer

 2、Buffer的子类一共有7个,分别对应的是8大基本数据类型(除了boolean),平时我们网络数据传输最终都是转换为字节,所以用的最多的,应该为ByteBuffer

 3、下面来讲一下Buffer是怎样实现数据存储:

Buffer类定义了所有的缓冲区都具有的四个属性来提供关于其所包含的数据元素的信息:

①mark:标记

②position:位置,表示下一个要被读写的元素的索引,每次读写缓冲区数据的时候,都有可能改变该值,为下次读写做准备

③limit:表示缓存区当前终点,不能对缓存区超过极限的位置进行读写操作,且该极限是可以修改的。

④capacity:容量,即可以容纳的最大数据量,在缓冲区创建时被设定且不能改变

 

4、常用的一些方法

 以及ByteBuffer最常用方法:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值