您的位置:首頁>正文

尚學堂java學習筆記:屬性

有的緩衝區都具有四個屬性來提供關於其所包含的資料元素的資訊。 它們是:

容量(Capacity)

緩衝區能夠容納的資料元素的最大數量。 這一容量在緩衝區創建時被設定, 並且永遠不能被改變。

上界(Limit)

緩衝區的第一個不能被讀或寫的元素。 或者說, 緩衝區中現存元素的計數。

位置(Position)

下一個要被讀或寫的元素的索引。 位置會自動由相應的 get( )和 put( )方法更新。

標記(Mark)

一個備忘位置。 調用 mark( )來設定 mark = postion。 調用 reset( )設定 position = mark。 標記在設定前是未定義的(undefined)。

這四個屬性之間總是遵循以下關係:

一個備忘位置。 調用 mark( )來設定 mark = postion。 調用 reset( )設定 position = mark。 標記在設定前是未定義的(undefined)。

這四個屬性之間總是遵循以下關係:

0 <= mark <= position <= limit <= capacity

讓我們來看看這些屬性在實際應用中的一些例子。 圖 2-2 展示了一個新創建的容量為 10的 ByteBuffer 邏輯視圖。

圖 2-2. 新創建的 ByteBuffer(1)

位置被設為 0, 而且容量和上界被設為 10, 剛好經過緩衝區能夠容納的最後一個位元組。 標記最初未定義。 容量是固定的, 但另外的三個屬性可以在使用緩衝區時改變。

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示