更新時間:2020-03-24 12:23:33 來源:動力節(jié)點 瀏覽5268次
數(shù)組的查詢效率高,增刪效率低
數(shù)組中存儲元素的類型是統(tǒng)一的,在定義數(shù)組時就已經(jīng)確定了。另外,每一個元素在內(nèi)存中所占的空間大小是相同的,和元素數(shù)據(jù)類型相關(guān)。數(shù)組實例指向數(shù)組首元素的內(nèi)存地址,要查找的元素只要通過數(shù)組下標(biāo)就可以快速的計算出數(shù)組元素在內(nèi)存中的偏移量,通過首元素內(nèi)存地址加上偏移量可以快速計算出要查找元素的內(nèi)存地址,通過內(nèi)存地址快速定位該元素,所以數(shù)組查找元素的效率較高。
但是需要注意的是,隨機的對數(shù)組進(jìn)行增刪元素效率較低,因為當(dāng)增加的元素的時候,為了保證數(shù)組中元素在空間存儲上是有序的,所以被添加元素位置后面的所有元素都要向后移動。同樣,刪除元素也是,后面所有的元素要向前移動。所以數(shù)組的增刪元素的效率很低。
動態(tài)增刪數(shù)組中的元素示意圖:
案例1:向數(shù)組中插入元素,在某個值前插入元素,前提條件是數(shù)組中沒有重復(fù)值
案例2:刪除數(shù)組中某個特定值的元素,前提條件是數(shù)組中沒有重復(fù)值
初始化一維數(shù)組有兩種方式:
1.靜態(tài)初始化
2.動態(tài)初始化
靜態(tài)初始化:當(dāng)創(chuàng)建數(shù)組對象時同時也初始化了數(shù)組元素,同時數(shù)組的長度也確定了,數(shù)組的長度一旦設(shè)定就不能在更改了。
動態(tài)初始化:先定義數(shù)組元素,然后對數(shù)組進(jìn)行賦值,是動態(tài)的初始化。
獲取數(shù)組元素的值要通過數(shù)組的下標(biāo),數(shù)組的下標(biāo)從0開始,數(shù)組的長度可以通過數(shù)組對象的屬性length獲得。
案例3:靜態(tài)初始化并通過數(shù)組下標(biāo)獲取數(shù)組元素的值
案例4:動態(tài)初始化,首先確定了數(shù)組的長度,然后通過數(shù)組下標(biāo)對數(shù)組各元素賦值。
動態(tài)初始化一維數(shù)組,會先在堆內(nèi)存中為數(shù)組分配空間,并且為數(shù)組中的每一個元素賦默認(rèn)值。
以上就是動力節(jié)點Java培訓(xùn)機構(gòu)小編介紹的“Java基礎(chǔ)學(xué)習(xí):Java數(shù)組下標(biāo)”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743