Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中缓冲区的用途是什么?_Java_Buffer - Fatal编程技术网

Java中缓冲区的用途是什么?

Java中缓冲区的用途是什么?,java,buffer,Java,Buffer,Buffer是一个抽象类,具有具体的子类,如ByteBuffer、IntBuffer等。它似乎是一个特定基元类型的数据容器。缓冲区的好处是什么?为什么我不使用数组或列表呢?缓冲区可以以最简单的形式定义为某种类型的连续内存块。因此,大小为4K(4096字节)的字节缓冲区可能会占用内存位置0xf000到0xffff 至于为什么可以使用缓冲区类型而不是数组或列表,这两种备选方案都没有限制、位置或标记的内置功能 在第一项上,缓冲区将容量与限制分开,因为当前限制为10,则容量为1000。换言之,它强制实现

Buffer是一个抽象类,具有具体的子类,如ByteBuffer、IntBuffer等。它似乎是一个特定基元类型的数据容器。缓冲区的好处是什么?为什么我不使用数组或列表呢?

缓冲区可以以最简单的形式定义为某种类型的连续内存块。因此,大小为4K(4096字节)的字节缓冲区可能会占用内存位置
0xf000
0xffff

至于为什么可以使用缓冲区类型而不是数组或列表,这两种备选方案都没有
限制
位置
标记
的内置功能

在第一项上,缓冲区将
容量
限制
分开,因为当前
限制
为10,则
容量
为1000。换言之,它强制实现了一种可变大小的能力,最大可容纳
容量

对于其他两个功能,当前
位置
提供了一种内置方式来读取或写入下一个元素,从而简化了顺序处理,而
标记
提供了一种方式来保存当前
位置
,以便稍后重置

如果需要将这些特性与数组或列表结合使用,则所有这些特性都需要额外的变量


当然,如果您不需要这些功能中的任何一项,那么请务必使用数组。

缓冲区可以以最简单的形式定义为某种类型的连续内存块。因此,大小为4K(4096字节)的字节缓冲区可能会占用内存位置
0xf000
0xffff

至于为什么可以使用缓冲区类型而不是数组或列表,这两种备选方案都没有
限制
位置
标记
的内置功能

在第一项上,缓冲区将
容量
限制
分开,因为当前
限制
为10,则
容量
为1000。换言之,它强制实现了一种可变大小的能力,最大可容纳
容量

对于其他两个功能,当前
位置
提供了一种内置方式来读取或写入下一个元素,从而简化了顺序处理,而
标记
提供了一种方式来保存当前
位置
,以便稍后重置

如果需要将这些特性与数组或列表结合使用,则所有这些特性都需要额外的变量


当然,如果您不需要这些功能中的任何一项,那么请务必使用数组。

阅读文档时应突出显示差异,以回答此问题。例如,我看到了这些方法的作用。我想知道缓冲区的典型用途是什么。为了清楚起见,我的问题的另一个版本可能是“缓冲区”这个名称意味着什么?”。我想我认为它的功能暗示了它的用途_(ツ)_/“阅读文档应该通过突出显示差异来回答这个问题。例如,我看到了这些方法的作用。我想知道缓冲区的用途通常是什么。为了清楚起见,我的问题的另一个版本可能是“缓冲区的名称意味着什么?”。我想我假设缓冲区的功能暗示了其用途”_(ツ)_/“‘buffer’这个名字意味着什么?@cowpow,一个buffer只是一个连续的内存块。例如,位于内存位置17的一个十字节的buffer占用17到26(含17到26)的字节地址。我将把它添加到答案中。buffer这个名字意味着什么?@cowpow,一个buffer只是一个连续的内存块。例如,一个十字节的buffer内存位置17处的e缓冲区占用从17到26(含17)的字节地址。我将把它添加到答案中。