首頁 > Java > java教程 > 主體

Java中數組與常見異常的範例分析

WBOY
發布: 2023-04-28 19:34:19
轉載
1287 人瀏覽過

數組的定義

1:單一變數能儲存資訊

2:用來儲存具有相同資料類型的資料集合,可以使用共同的名字來引用數組中儲存的數據。

特點

陣列可以儲存任何類型的數據,包括原始資料類型和引用資料類型,但是一旦指定了陣列的類型之後,就只能用來儲存指定類型的資料。

陣列的使用

  • 聲明一個陣列變數來存放該陣列

語法

資料型別[] 陣列名稱

資料型別數組名[]

//声明一个int类型 名为 numebr 的数组
int [] number;
int number [];
//以上两种方法都可以
登入後複製
  • 建立一個新的陣列物件並將其賦值給上一個步驟所創建的陣列變數:

1:使用new運算子

int [] number = new [5];
// 意思是把number这个数组的长度设置为5,
//但是数组的长度一旦被设置,就无法更改
登入後複製

2:直接初始化陣列

int [] number = {1,2,3,4,5,6}
//也可以直接用进行赋值,写入相同类型的数值即可
登入後複製

3:存取或修改此陣列中存儲的資料

a:如果需要存取數組中的元素,需要使用數組名[下標]的形式來存取

b:注意數組的最大下標是:數組的長度-1 ;最開始的下標是:0

c:數組的長度可以透過使用數組的屬性length來獲取,每一個數組物件都會有length屬性來表示數組的長度,也即數組元素的個數

//输出number数值第2个数字
System.out.println(number[1])
登入後複製

4:遍歷數組:

若要把數組內的所有元素都輸出一邊,可以採用for迴圈的方式

int [] numebr = {1,2,3,4,5}
for(int i=0;i<number.length;i++){
		System.out.println(number[i])
}
登入後複製
  • ##創建二維陣列

二維陣列的建立同樣有兩種方式:

方式一:

使用new運算子

int [][] number = new int[5][5];
登入後複製

方式二:宣告數組並且賦初始值

 int [][] nuber = {{1,2,3,},{4,5,6,},{7,8}};
 //二维数组就是在一个大的数组内,还包含了二级数组,可以理解成嵌套的意思
 //若要输出二维数组,也可以采用多个for循环的方式
 int [][] nuber = {{1,2,3},{4,5,6},{7,8,9}};
        for(int i =0;i<nuber.length;i++){
            for (int j = 0;j<nuber.length;j++){
                System.out.println(nuber[i][j]);
            }
        }
登入後複製
需要注意的問題:

數組越界異常報錯:

數組越界屬於運行時異常,當數組訪問長度超過數組本身長度時,就會拋出數組越界異常

java.lang.ArrayIndexOutOfBoundsException

數組指向和傳遞

#引用傳遞的本質是堆疊記憶體中的**欄位(集合)**指向堆記憶體中的資料。當發生數組的賦值或數組的函數參數傳遞時,傳遞的是值得引用,也就是將指向該資料的指標傳遞,使得指向同一塊資料內存,從而達到數組傳遞的目的。所以,當堆記憶體的資料時,其他指向該資料段的引用都會被修改。

常見例外:

陣列下標越界異常:ArrayIndexOutOfBoundsException

#陣列下標越界例外:ArrayIndexOutOfBoundsException

字串下標越界例外:StringIndexOutOfBoundsException

類別轉換例外:ClassCastException

空指標例外:NullPointerException

數位格式化例外:NumberFormatException

#輸入無法比對例外:InputMismatchException

#解析異常:ParseException

沒有這樣的元素異常:NoSuchElementException

檔案找不到異常:FileNotFoundException

算術異常:ArithmeticException

錯誤的參數異常:IllegalArgumentException#######

以上是Java中數組與常見異常的範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板