ByteBuffer的用法

本文详细解析了ByteBuffer的三个关键属性:position、limit和capacity,并通过示例代码展示了ByteBuffer的一般使用流程,包括分配空间、写入数据、调用flip()方法进行读取前的准备、从Buffer中读取数据以及调用clear()或compact()方法释放资源。

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

ByteBuffer 的三个属性

position

limit

capacity

 

buffer的一般使用过程

// 1.分配空间
// 2.写入数据到Buffer
// 3.调用filp()方法
// 4.从Buffer中读取数据
// 5.调用clear()方法或者compact()方法

 

    public static void main(String[] args) {
        
        ByteBuffer byteBuffer = ByteBuffer.allocate(1024);
        //写入数据
        byteBuffer.put("Hello,world".getBytes());  
        System.out.println("remaining : "+byteBuffer.remaining());
        System.out.println("position : "+byteBuffer.position());

        //读取数据
        byteBuffer.flip();
        byte [] dst = new byte[11];
        byteBuffer.get(dst);
        System.out.println(new String(dst));
        
    }

 

 

flip是将position 设置为0,limit设置为position, 准备从buffer中读取数据

 

转载于:https://www.cnblogs.com/moris5013/p/10675514.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值