[轉] java.nio.ByteBuffer中flip、rewind、clear方法的區別

轉載

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

  1. limit:所有對Buffer讀寫操作都會以limit變量的值作為上限。
  2. position:代表對緩沖區進行讀寫時,當前游標的位置。
  3. 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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/286064.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/286064.shtml
英文地址,請注明出處:http://en.pswp.cn/news/286064.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【MATLAB統計分析與應用100例】案例014:matlab讀取Excel數據,調用stepwise函數作交互式逐步回歸分析

文章目錄 1. 交互式逐步回歸分析結果預覽2. 完整matlab代碼1. 交互式逐步回歸分析結果預覽 2. 完整matlab代碼 % 從Excel文件examp08_03.xls中讀取數值型數據 xydata = xlsread(examp08_03.xls); y = xydata<

MsSql 自定義分數段,按分數段統計考試人次

--分數段分布 DECLARE levels VARCHAR(100) 10,20,30,40,50,60,70,80,90,100; --自定義分數段 DECLARE paperId VARCHAR(100)0000000000001019--試卷編號 WITH tbTemp AS (--處理分數段SELECT L.levelFROM (SELECT [value] CONVERT(XML, <v> REPLACE(levels, ,, &l…

C語言試題五十四之求n以內(不包括n)同時能被3與7整除的所有自然數之和的平方根s,并作為函數值返回。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫一個…

opencv---顏色空間轉化并實現物體跟蹤

一、圖像處理的基本操作 因為這是第一篇寫opencv的筆記&#xff0c;故先講講在python下寫opencv的基本操作。總共總結了三點如下&#xff1a; 開頭一定要加編碼聲明:-*- coding: utf-8 -*-python下記得引入opencv模塊:import cv2要知道如何讀取并展示圖片,代碼如下:# -*- codin…

簽到功能完成03《ivx低代碼簽到系統制作》

制作iVX 低代碼項目需要進入在線IDE&#xff1a;https://editor.ivx.cn/ 一、簽到頁制作 上一節完成了簽到內容的發布&#xff0c;那我們接下來如何制作一個簽到頁面并且簽到呢&#xff1f; 此時我們先創建一個頁面叫做簽到二維碼頁面&#xff1a; 隨后直接預覽這個頁面&am…

System.CommandLine參數Argument

前兩篇說到Command和Option&#xff0c;這篇說說Argument。Argument的用法和Option很像&#xff0c;只是他的構造和屬性有些差別&#xff0c;再就是在運行輸入時有區別&#xff0c;接下來看看實現。一個參數//創建根命令 var rootCommand new RootCommand("這是一個命令行…

php 迭代器

迭代器&#xff08;Iterator&#xff09;模式&#xff0c;又叫做游標&#xff08;Cursor&#xff09;模式。GOF給出的定義為&#xff1a;提供一種方法訪問一個容器&#xff08;container&#xff09;對象中各個元素&#xff0c;而又不需暴露該對象的內部細節。 百度百科: http:…

Kotlin和Java混合開發總結(基于Kotlin1.3.0版本)

我本來是不想學習kotlin的&#xff0c;但是現在的形勢&#xff0c;很多公司都在使用kotlin開發&#xff0c;可以說學會kotlin也是無奈之舉&#xff0c;既然是潮流&#xff0c;谷歌也在大力推廣&#xff0c;所以還是只能硬著頭皮逼迫自己學一下&#xff0c;也能更快適應公司的需…

GitHub中watch、star、fork的作用

star 的作用是收藏&#xff0c;目的是方便以后查找。watch 的作用是關注&#xff0c;目的是等作者更新的時候&#xff0c;你可以收到通知。fork 的作用是參與&#xff0c;目的是你增加新的內容&#xff0c;然后 Pull Request&#xff0c;把你的修改和主倉庫原來的內容合并。最早…

【MATLAB統計分析與應用100例】案例015:matlab讀取Excel數據,進行值聚類分析

1. 聚類分析輪廓圖 2. matlab完整代碼 %*****計算例9.1的距離矩陣 x = [1, 2, 6, 8, 11];

C語言試題五十五之m個人的成績存放在score數組中,請編寫函數function,它的功能是:將高于平均分的人數作為函數值返回,將高于平均分的分數放在high所指定的數組中。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 m個人的成…

01超精美漸變色動態背景完整示例【CSS動效實戰(純CSS與JS動效)】

若是大一學子或者是真心想學習剛入門的小伙伴可以私聊我&#xff0c;若你是真心學習可以送你書籍&#xff0c;指導你學習&#xff0c;給予你目標方向的學習路線&#xff0c;無套路&#xff0c;博客為證。 本節案例如下&#xff08;其他動效篇幅原因逐步講解&#xff0c;歡迎三…

Liferay 用本地私服(nexus) 打包部署Portlet應用

當我們使用搭建一個nexus本地倉庫&#xff0c;并且配置settings.xml來讓應用啟用這個倉庫。我們使用Liferay 6.1.10的archetype來創建liferay portlet, 如下圖&#xff1a; 當我們運行命令mvn package liferay:deploy時&#xff0c;會出現以下錯誤&#xff1a; [DEBUG] Using c…

.NET Core 分布式事務 CAP 發布 6.1 正式版

前言我們很高興宣布 CAP 發布 6.1 版本正式版&#xff0c;在這個版本中我們主要針對目前已經發現的幾個BUG進行了修復了以及添加了一些小特性。那么&#xff0c;接下來我們具體看一下吧。總覽可能有些人還不知道 CAP 是什么&#xff0c;老規矩來一個簡介。CAP地址&#xff1a;h…

【MATLAB統計分析與應用100例】案例016:matlab讀取Excel數據,進行樣品系統聚類分析

1. 聚類分析結果 2. matlab完整代碼 (1)讀取數據,并進行標準化 [X,textdata] = xlsread(examp09_02.xls); % 從Excel文件中讀取數據 X = zscore(X

解決React Native報錯:Error:Found unexpected optical bounds (red pixel)

問題背景 同樣是在升級 gradle plugin V2.2.3 --> gradle plugin V3.0.1后&#xff0c;運行至打包APK期間報錯&#xff1a; Error:found unexpected optical bounds (red pixel) on top border at x14.&#xff08;錯誤&#xff1a;在X14的上邊框上發現意外的光學邊界&am…

C語言試題五十六之計算并輸出給定整數n的所有因子(不包括1與自身)之和。規定n的值不大于1000。

??個人主頁:個人主頁 ??系列專欄:C語言試題200例目錄 ??推薦一款刷算法、筆試、面經、拿大公司offer神器 ?? 點擊跳轉進入網站 ?作者簡介:大家好,我是碼莎拉蒂,CSDN博客專家(全站排名Top 50),阿里云博客專家、51CTO博客專家、華為云享專家 1、題目 請編寫函數…

webpack 入門

什么是WebPack&#xff0c;為什么要使用它&#xff1f; 為什要使用WebPack 現今的很多網頁其實可以看做是功能豐富的應用&#xff0c;它們擁有著復雜的JavaScript代碼和一大堆依賴包。為了簡化開發的復雜度&#xff0c;前端社區涌現出了很多好的實踐方法 模塊化&#xff0c;讓我…

mysql 列類型

列類型整型 tinyint&#xff0c;smallint&#xff0c;mediumint,int,bigint (可選參數unsigned &#xff0c;&#xff08;M&#xff0c;zerofill&#xff0c;結合使用才有意義&#xff09;)浮點型 float(可選參數D,M) decimal&#xff08;可選參數D&#xff0c;M&#xff09;字…

使用vsftp虛擬用戶實現安全訪問控制

一、ftp連接方式 1、命令連接 ftp在與用戶交互時&#xff0c;首先打開的是TCP的21號端口&#xff0c;建立命令連接&#xff0c;這個連接會始終存在&#xff0c;直到用戶輸入bye的那一刻&#xff0c;才斷開命令連接。 2、數據連接 1&#xff09;主動連接 主動連接是基于TCP21號端…