|
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 为负整数
|