ByteBuffer中allocateDirect与allocate的区别
Java的NIO(New IO)中的ByteBuffer的allocateDirect()与allocate()的区别
allocateDirect
public static ByteBuffer allocateDirect(int capacity)
- 分配新的直接字节缓冲区。
新缓冲区的位置将为零,其界限将为其容量,其标记是不确定的。无论它是否具有
底层实现数组,其标记都是不确定的。 -
- 参数:
capacity- 新缓冲区的容量,以字节为单位- 返回:
- 新的字节缓冲区
- 抛出:
IllegalArgumentException- 如果 capacity 为负整数
allocate
public static ByteBuffer allocate(int capacity)
- 分配一个新的字节缓冲区。
新缓冲区的位置将为零,其界限将为其容量,其标记是不确定的。它将具有一个
底层实现数组,且其数组偏移量将为零。 -
- 参数:
capacity- 新缓冲区的容量,以字节为单位- 返回:
- 新的字节缓冲区
- 抛出:
IllegalArgumentException- 如果 capacity 为负整数
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
