Java 中的 FloatBuffer mark() 方法及示例

2025年1月6日 | 3 分钟阅读

java.nio.FloatBuffer 类的 mark() 函数用于清除此缓冲区。FloatBuffer 类的 mark() 方法将此 FloatBuffer 的当前位置标记为缓冲区的标记。

语法

参数:该方法不需要任何参数。

返回值:此方法将缓冲区的标记设置为当前位置,然后返回此 FloatBuffer。

示例 1

下面的示例说明了如何将 Java 的 mark 和 reset 函数与 FloatBuffer 一起使用。将位置设置为索引 3,并使用现有的浮点数组初始化 FloatBuffer。然后将位置移动到索引 6 并在此位置标记。在重置之前,它会打印当前位置。通过调用 reset 过程,可以将缓冲区重置到指定的点(索引 3)。最后,它打印重置后的位置,以展示 mark 和 reset 如何用于返回缓冲区中已记录的点。

实施

文件名:markFloatExample1.java

输出

 
The position before reset is given by: 6
The position after reset is given by: 3   

示例 2

下面的示例解释了如何将 Java 的 mark 和 reset 函数与 FloatBuffer 一起使用。它将缓冲区的当前位置设置为索引 2,并使用预先配置的浮点数组初始化 FloatBuffer。之后,它将位置设置为索引 1,并使用 mark 函数标记此位置。在调用 reset 之前,它会打印当前位置,即 1。调用 reset 后,缓冲区的位置将返回到先前指定的点(索引 2)。为了演示 mark 和 reset 方法如何能够返回到缓冲区中的特定点,代码会在重置后打印出当前位置。

实施

文件名:markFloatExample2.java

输出

 
The position before reset is given by: 1
The New position is less than the position that has marked before 
The Exception thrown is: java.nio.InvalidMarkException