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 为负整数
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。