日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發布時間:2023/12/9 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转] java.nio.ByteBuffer中flip、rewind、clear方法的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載

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

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

    clear方法



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

    clear方法將緩沖區清空,一般是在重新寫緩沖區時調用。

    flip方法



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

    ?

    反轉緩沖區。首先將限制設置為當前位置,然后將位置設置為 0。如果已定義了標記,則丟棄該標記。 常與compact方法一起使用。通常情況下,在準備從緩沖區中讀取數據時調用flip方法。

    rewind方法



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

    ?

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

    ?

    轉載于:https://www.cnblogs.com/gaorongyi/articles/5095457.html

    總結

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

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。