ByteBuffer的用法

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