日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

java.nio.ByteBuffer中flip、rewind、clear方法的区别

發(fā)布時間:2025/3/21 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java.nio.ByteBuffer中flip、rewind、clear方法的区别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

對緩沖區(qū)的讀寫操作首先要知道緩沖區(qū)的下限、上限和當(dāng)前位置。下面這些變量的值對Buffer類中的某些操作有著至關(guān)重要的作用:

  • limit:所有對Buffer讀寫操作都會以limit變量的值作為上限。
  • position:代表對緩沖區(qū)進行讀寫時,當(dāng)前游標(biāo)的位置。
  • capacity:代表緩沖區(qū)的最大容量(一般新建一個緩沖區(qū)的時候,limit的值和capacity的值默認(rèn)是相等的)。
  • flip、rewind、clear這三個方法便是用來設(shè)置這些值的。

    ?

    clear方法

    ?

    public?final?Buffer?clear()
    {
    ????position?=?0;?//重置當(dāng)前讀寫位置
    ????limit?=?capacity;?
    ????mark?=?-1;??//取消標(biāo)記
    ????return?this;
    }


    clear方法將緩沖區(qū)清空,一般是在重新寫緩沖區(qū)時調(diào)用。

    flip方法

    public?final?Buffer flip()?{
    ?limit?=?position;
    ?position?=?0;
    ?mark?=?-1;
    ?return?this;
    }

    反轉(zhuǎn)緩沖區(qū)。首先將限制設(shè)置為當(dāng)前位置,然后將位置設(shè)置為 0。如果已定義了標(biāo)記,則丟棄該標(biāo)記。 常與compact方法一起使用。通常情況下,在準(zhǔn)備從緩沖區(qū)中讀取數(shù)據(jù)時調(diào)用flip方法。

    rewind方法

    ?

    1public?final?Buffer rewind()?{
    2?position?=?0;
    3?mark?=?-1;
    4?return?this;
    5}




    以上三種方法均使用final修飾,java.nio.Buffer的所有子類均使用同一種flip、clear和rewind機制。

    總結(jié)

    以上是生活随笔為你收集整理的java.nio.ByteBuffer中flip、rewind、clear方法的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。