Buffer中常用(必用)的幾個方法介紹

          首先介紹一下Buffer的使用場景,Buffer是Java NIO中非常重要的一個類,數(shù)據(jù)在各種Channel的讀寫時都需要這個類來緩沖。
          然而Buffer在讀寫之前需要做一些準備工作,比如:在讀取Buffer里的數(shù)據(jù)之前要先在Buffer里準備好要讀取數(shù)據(jù),往Buffer里寫數(shù)據(jù)時,要找出Buffer里的空余空間或者要清空Buffer等等。做以上事情方法有:clear(), flip(), rewind().因為我經(jīng)常記不住這幾個方法的功能,所以在此記錄一下, 也供他人查找。

          Buffer有幾個下標需要注意:position(當前位置), limit(可度/寫數(shù)據(jù) 下標的最大值), capacity(實際空間)
          1.clear()

          使Buffer為一系列新的通道讀取或相對放置 操作做好準備,即為往Buffer中寫數(shù)據(jù)做好準備

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

           2. flip()
          使Buffer為一系列新的通道寫入或相對獲取 操作做好準備:它將限制設置為當前位置,然后將位置設置為 0。即為從Buffer中度數(shù)據(jù)做好準備

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

          3.rewind()
          使緩沖區(qū)為重新讀取已包含的數(shù)據(jù)做好準備:它使限制保持不變,將位置設置為 0。
           public final Buffer rewind()
            {
              this.position = 0;
              this.mark = -1;
              return this;
            }


          Kyle Wang

          posted on 2012-07-21 15:07 王樹東 閱讀(232) 評論(0)  編輯  收藏 所屬分類: Java Skills Learning and Sharing


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統(tǒng)計

          公告

          常用鏈接

          留言簿

          隨筆分類(17)

          隨筆檔案(15)

          文章分類(4)

          文章檔案(5)

          收藏夾(4)

          Algorithm

          Design

          Environment Setup

          Installer

          Maven

          MINA

          OS

          Skills for Java

          VIM

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 内乡县| 稷山县| 富川| 罗江县| 分宜县| 阿城市| 黄大仙区| 红原县| 娄烦县| 金华市| 池州市| 和硕县| 高阳县| 安溪县| 邵东县| 内黄县| 仁化县| 柘城县| 民权县| 武城县| 色达县| 芦山县| 十堰市| 原阳县| 靖宇县| 客服| 法库县| 商城县| 如皋市| 湟中县| 衡阳县| 历史| 天全县| 新乐市| 高唐县| 宁强县| 报价| 兴和县| 宣恩县| 射洪县| 青铜峡市|