广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州Java缓冲区的索引位置是什么?_北大青鸟IT学校

作者:邓华发布时间:2021-04-13分类:Java技术浏览:701


导读:Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么Java缓冲区的索引位置是什么?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

Java是现在非常主流的编程语言之一,很多人想转行学习IT,首选Java语言。那么Java缓冲区的索引位置是什么?下面就让我们一起来看看惠州北大青鸟老师是怎么回答的。

缓冲区的每个元素都有一个索引。第一个元素的索引为0,最后一个元素的索引为capacity-1。

创建缓冲区时,其位置设置为0,其限制等于其容量。

我们可以使用它的重载position()方法获取/设置缓冲区的位置。

position()方法返回缓冲区位置的当前值。

position(int newPosition)方法将缓冲区的位置设置为指定的newPosition值,并返回缓冲区的引用。

我们可以使用它的重载limit()方法获取/设置缓冲区的限制。

limit()方法返回缓冲区限制的当前值。limit(int newLimit)方法将缓冲区的限制设置为指定的newLimit值,并返回缓冲区的引用。

我们可以使用mark()方法为缓冲区的位置添加书签。当我们调用mark()方法时,缓冲区将其位置的当前值存储为其标记值。我们可以通过使用reset()方法将缓冲区的位置设置为之前加书签的值。

缓冲区的标记在创建时未定义。只有当定义了它的标记时,我们才必须在缓冲区上调用reset()方法。否则,reset()方法会抛出InvalidMarkException异常。

以下代码创建一个新缓冲区并显示其四个属性。

import java.nio.ByteBuffer;import java.nio.InvalidMarkException;public class Main {  public static void main(String[] args) {
   ByteBuffer bb = ByteBuffer.allocate(8);

   System.out.println("Capacity: " + bb.capacity());
   System.out.println("Limit: " + bb.limit());
   System.out.println("Position: " + bb.position());    // The mark is not set for a new buffer. Calling the    // reset() method throws a runtime exception if the mark is not set.    try {
     bb.reset();
     System.out.println("Mark: " + bb.position());
   } catch (InvalidMarkException e) {
     System.out.println("Mark is not  set");
   }
 }
}

上面的代码生成以下结果。

Capacity: 8

Limit: 8

Position: 0

Mark is not set

想了解更多关于Java的资讯,可以来惠州北大青鸟新方舟校区了解一下。

Java15.jpg

Java

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表