柚子快報邀請碼778899分享:NIO之緩沖區(qū)【復(fù)制緩沖區(qū)】
柚子快報邀請碼778899分享:NIO之緩沖區(qū)【復(fù)制緩沖區(qū)】
System.out.println(charbuffer1+“–”+charbuffer1.capacity()+" “+charbuffer1.limit()+” "+charbuffer1.position());
System.out.println(charbuffer2+“–”+charbuffer2.capacity()+" “+charbuffer2.limit()+” "+charbuffer2.position());
}
輸出結(jié)果
abc–10 3 0
abc --10 10 0
asReadOnlyBuffer
asReadOnlyBuffer()函數(shù)來生成一個只讀的緩沖區(qū)視圖,這與duplicate()相同,除了這個新的緩沖區(qū)不允許使用put(),并且其isReadOnly()函數(shù)將會返回true。對這一只讀緩沖區(qū)的put()函數(shù)的調(diào)用嘗試會導(dǎo)致拋出ReadOnlyBufferException異常。
public static void main(String[] args) {
CharBuffer charbuffer1 = CharBuffer.allocate(10);
CharBuffer charbuffer2 = charbuffer1.asReadOnlyBuffer();
charbuffer1.put(‘a(chǎn)’).put(‘b’).put(‘c’);
charbuffer1.flip();
System.out.println(charbuffer1);
System.out.println(charbuffer2);
charbuffer2.put(“d”);
}
輸出:
abc
abc
Exception in thread “main” java.nio.ReadOnlyBufferException
at java.nio.CharBuffer.put(Unknown Source)
at java.nio.CharBuffer.put(Unknown Source)
at com.sxt.nio.Demo02.main(Demo02.java:14)
slice
分割緩沖區(qū)與復(fù)制相似,但slice()創(chuàng)建一個從原始緩沖區(qū)的當(dāng)前位置開始的新緩沖區(qū),并且其容量是原始緩沖區(qū)的剩余元素數(shù)量(limit-position)。這個新緩沖區(qū)與原始緩沖區(qū)共享一段數(shù)據(jù)元素子序列。分割出來的緩沖區(qū)也會繼承只讀和直接屬性。
public static void main(String[] args) {
CharBuffer charbuffer1 = CharBuffer.allocate(10);
charbuffer1.put(‘a(chǎn)’).put(‘b’).put(‘c’);
charbuffer1.flip();
System.out.println(charbuffer1);
System.out.println(charbuffer1.position()+" “+charbuffer1.limit()+” "+charbuffer1.capacity());
charbuffer1.position(1);
CharBuffer cb = charbuffer1.slice();
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。
深知大多數(shù)Java工程師,想要提升技能,往往是自己摸索成長或者是報班學(xué)習(xí),但對于培訓(xùn)機構(gòu)動則幾千的學(xué)費,著實壓力不小。自己不成體系的自學(xué)效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年Java開發(fā)全套學(xué)習(xí)資料》,初衷也很簡單,就是希望能夠幫助到想自學(xué)提升又不知道該從何學(xué)起的朋友,同時減輕大家的負擔(dān)。
既有適合小白學(xué)習(xí)的零基礎(chǔ)資料,也有適合3年以上經(jīng)驗的小伙伴深入學(xué)習(xí)提升的進階課程,基本涵蓋了95%以上Java開發(fā)知識點,真正體系化!
由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學(xué)習(xí)筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且會持續(xù)更新!
如果你覺得這些內(nèi)容對你有幫助,可以掃碼獲取?。。▊渥ava獲?。?/p>
最后:學(xué)習(xí)總結(jié)——MyBtis知識腦圖(純手繪xmind文檔)
學(xué)完之后,若是想驗收效果如何,其實最好的方法就是可自己去總結(jié)一下。比如我就會在學(xué)習(xí)完一個東西之后自己去手繪一份xmind文件的知識梳理大綱腦圖,這樣也可方便后續(xù)的復(fù)習(xí),且都是自己的理解,相信隨便瞟幾眼就能迅速過完整個知識,腦補回來。下方即為我手繪的MyBtis知識腦圖,由于是xmind文件,不好上傳,所以小編將其以圖片形式導(dǎo)出來傳在此處,細節(jié)方面不是特別清晰。但可給感興趣的朋友提供完整的MyBtis知識腦圖原件(包括上方的面試解析xmind文檔)
除此之外,前文所提及的Alibaba珍藏版mybatis手寫文檔以及一本小小的MyBatis源碼分析文檔——《MyBatis源碼分析》等等相關(guān)的學(xué)習(xí)筆記文檔,也皆可分享給認可的朋友!
《一線大廠Java面試題解析+核心總結(jié)學(xué)習(xí)筆記+最新講解視頻+實戰(zhàn)項目源碼》,點擊傳送門即可獲取! is源碼分析文檔——《MyBatis源碼分析》等等相關(guān)的學(xué)習(xí)筆記文檔,也皆可分享給認可的朋友!
《一線大廠Java面試題解析+核心總結(jié)學(xué)習(xí)筆記+最新講解視頻+實戰(zhàn)項目源碼》,點擊傳送門即可獲?。?/p>
柚子快報邀請碼778899分享:NIO之緩沖區(qū)【復(fù)制緩沖區(qū)】
相關(guān)閱讀
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。