java java中定義一個(gè)二維數(shù)組arr,arr的地址和arr[0]為什么不一樣,是怎么開辟內(nèi)存空間的?
java中定義一個(gè)二維數(shù)組arr,arr的地址和arr[0]為什么不一樣,是怎么開辟內(nèi)存空間的?二維數(shù)組arr[]可視為上一行和下一列。例如,arr[0][1]一維數(shù)組arr[]的第一行第二列可以看作
java中定義一個(gè)二維數(shù)組arr,arr的地址和arr[0]為什么不一樣,是怎么開辟內(nèi)存空間的?
二維數(shù)組arr[]可視為上一行和下一列。例如,arr[0][1]一維數(shù)組arr[]的第一行第二列可以看作arr[0
的第一個(gè)元素,在圖中,堆棧內(nèi)存空間的引用應(yīng)該是數(shù)組的第一個(gè)地址ff01h。在Java中創(chuàng)建數(shù)組時(shí),需要在堆內(nèi)存中打開一個(gè)連續(xù)的空間,然后確保數(shù)組的第一個(gè)地址在堆棧內(nèi)存空間中。正是因?yàn)閿?shù)組中每個(gè)元素占用的內(nèi)存大小相同,所以可以通過下標(biāo)來訪問它,從而達(dá)到o(1)的時(shí)間復(fù)雜度。