Java-初步認識-常用對象API(StringBuffer類-可變長度數組)

一.

在介紹一個字符串緩衝區的小插曲。

new了一個StringBuffer,就是相當於一個長度爲16的數組,如果裝入第個字17符怎麼辦呢?

給大家介紹一下可變程度數組,說一下其原理。首先一點,數組必須是固定長度的。

如果輸入的字符變多,系統會將原有的長度變長,一般會增加一倍。如何將原有的字符串導入新的字符串緩衝區中呢?採用遍歷的方法(遍歷沒有理解深刻)。多出來的字符就輸入增加的後半段中,這就叫做可變長度數組原理。

對於構造方法已經存在的無參數列表的方法,爲什麼還有會有一個指定初始容量的方法?

如果藉助這個方法,構建一個長度爲40的字符串緩衝區,那麼輸入第41個字符是可以的,那麼通過無參數列表的方法也可以存儲,兩者有什麼區別?(貌似字符串緩衝區是可變程度的數組) 這個兩個方法採用哪一個都是可以的,就是效率有些不一樣。

如果能夠確定數據量在40以內,直接產生一個長度爲40的數組就行了。而如果用默認的方法來處理40個元素的數據的話,一旦超過16就要延長,一要開闢空間,二是要進行運算。延長到32,發現還沒夠,還要延長。

發佈了30 篇原創文章 · 獲贊 6 · 訪問量 8739
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章