目錄
創(chuàng)新互聯(lián)公司2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站制作、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元良慶做網(wǎng)站,已為上家服務(wù),為良慶各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108一、數(shù)組的定義
方式一
方式二
方式三
二、數(shù)組的原理
JVM的內(nèi)存劃分
運行原理
三、數(shù)組的常見操作異常
數(shù)組越界異常
數(shù)組空指針異常
數(shù)組:數(shù)組表示的是一串連續(xù)的存儲空間。數(shù)組既可以存儲基本數(shù)據(jù)類型,也可以存儲引用數(shù)據(jù)類型。
方式一數(shù)組存儲的數(shù)據(jù)類型[ ]? 數(shù)組名字 = new 數(shù)組存儲的數(shù)據(jù)類型[長度];
舉例:定義可以存儲5個整數(shù)的數(shù)組容器
int[] arr = new int[5];
注意:數(shù)組有定長特性,長度一旦指定,不可更改。
方式二數(shù)據(jù)類型[ ]? 數(shù)組名 = new? 數(shù)據(jù)類型[ ]{元素1,元素2,元素3...};
舉例:定義存儲1,2,3,4,5整數(shù)的數(shù)組容器
int[] arr = new int[]{1,2,3,4,5};
方式三數(shù)據(jù)類型[ ]? 數(shù)組名 = {元素1,元素2,元素3...};
舉例:定義存儲1,2,3,4,5整數(shù)的數(shù)組容器
int[] arr = {1,2,3,4,5};
二、數(shù)組的原理
JVM的內(nèi)存劃分想搞清楚數(shù)組的原理首先要清楚JVM的內(nèi)存劃分
區(qū)域名稱 | 作用 |
寄存器 | 給CPU使用的 |
本地方法區(qū) | JVM在使用操作系統(tǒng)功能的時候使用,如native修飾的內(nèi)容 |
方法區(qū) | 存儲可以運行的class文件 |
堆內(nèi)存 | 存儲對象或數(shù)組(由new創(chuàng)建的都存儲在堆內(nèi)存中) |
棧內(nèi)存 | 方法運行時使用的內(nèi)存 |
注意:所有的函數(shù)(方法)都必須在棧內(nèi)存運行,JVM只會運行處于棧內(nèi)存頂部的函數(shù),而函數(shù)被加載到棧內(nèi)存的動作稱為函數(shù)的壓棧(入棧),函數(shù)執(zhí)行完之后就會從棧中消失稱為函數(shù)的彈棧(出棧)
public static void main(String[] args) {
int[] arr = new int[5];
System.out.println(arr[0]);
}
運行原理此時程序的執(zhí)行流程(原理)
①:main方法進入方法棧執(zhí)行
②:創(chuàng)建數(shù)組:JVM會在堆內(nèi)存中開辟空間,存儲數(shù)組
③:數(shù)組在內(nèi)存中會有自己的內(nèi)存地址,以十六位進制表示
④:數(shù)組中有五個元素,默認索引是0
⑤:JVM將數(shù)組的內(nèi)存地址賦值給引用類型變量arr
⑥:變量arr保存的的是數(shù)組內(nèi)存中的地址,而不是一個具體數(shù)值,因此稱為引用數(shù)據(jù)類型
三、數(shù)組的常見操作異常 數(shù)組越界異常數(shù)組中賦值5個元素,索引是0,1,2,3,4,沒有5索引,因此我們不能訪問數(shù)組中不存在的索引,程序運行后會拋出數(shù)組越界異常(ArrayIndexOutOfBoundsException)
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
System.out.println(arr[5]);
}
數(shù)組空指針異常arr = null這行代碼,意味著變量arr將不會再保持數(shù)組的內(nèi)存地址,也就不允許再操作數(shù)組了,因此運行時會拋空指針異常(NullPointerException
)
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
arr = null;
System.out.println(arr[0]);
}
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧