Java基礎——數組

特征

(1)數組元素的類型是唯一的,一個數組只能存儲一種數據類型的數據。
(2)數組的長度是固定的,一旦數組初始化完成,數組所占有的內存空間將被固定。數組長度不可以改變。
(3)數組元素的類型既可以是基本類型 也是存儲引用類型。

聲明

數據類型[] 數組變量名(推薦寫法)
數據類型 數組變量名 []

Java是面向對象的語言,數據類型[]可以看成是一個整體類型,即數組類型,第二種是C 語言數組的聲明方式。

int[] intArr;
String[] stringArr;

初始化

數組初始化的過程就是為數組的元素分配內存空間,并且為每個元素賦初始值
**(1)動態初始化 **
動態初始化使用new運算符分配指定長度的內存空間,只指定長度,由系統給出初始化值,注意必須指定數組的長度值

new 數據類型[數組長度]

eg

        int[] intArr = new int[2];
        intArr[0] = 1;
        intArr[1] = 2;
        String[] stringArr = new String[3];
        stringArr[0] = "Hello world";
        stringArr[1] = "Hello Java";
        stringArr[2] = "Hello Python";

(2)靜態初始化

類型[] 數組名稱 = new 類型[]{元素,元素,....}
類型[] 數組名 = {元素,元素,....}

給出初始化值,不需要指定數組的長度,根據初始值的個數決定長度.

 int[] arr = new int[]{1,2,3,4,5}; 
 int[] arr = {1,2,3,4,5};

數組的初始化具體示例用法

public class Main {

    public static void main(String[] args){
        int [] arr = new int[10];// 聲明數組
        for(int i =0;i<arr.length;i++){
            arr[i]=i;
        }
        int []numbers = new int[]{100,90,80};
        for(int i =0;i<numbers.length;i++){
            System.out.println(numbers[i]);
        }
        for(int num :numbers){
            System.out.println(num);
        }
    }
}
ArrayIndexOutOfBoundsException

每個數組的索引都有一個范圍,即0——length-1,在訪問數組的元素,不能超過數組范圍,否則引起ArrayIndexOutOfBoundsException

public static void main(String[] args) {
       int [] arr ={1,2,3,4};
       System.out.println(arr[4]);
    }

NullPointerException

空指針異常,使用變量引用一個數組的時候,必須執行一個有效的數組對象,如果該變量值為null,則意味沒有指向任何數組,此時通過變量名稱訪問數組元素會出現空指針異常

public static void main(String[] args) {
       int [] arr ={1,2,3,4};
       System.out.println(arr[0]);
       arr = null;
       System.out.println(arr[0]);
    }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • ORA-00001: 違反唯一約束條件 (.) 錯誤說明:當在唯一索引所對應的列上鍵入重復值時,會觸發此異常。 O...
    我想起個好名字閱讀 5,429評論 0 9
  • 1. Java數組是靜態的 Java是靜態語言,所以Java的數組也是靜態的,即:數組被初始化后,長度不可變 靜態...
    CoderJed閱讀 7,548評論 0 8
  • 數組類型和數組引用變量詳解 數組類型為什么要用數組?Java數組的兩大特征:定義數組時,不能指定數組的長度變量分為...
    Ansaxnsy閱讀 2,903評論 2 3
  • 05.01_Java語言基礎(數組概述和定義格式說明)(了解) A:為什么要有數組(容器)為了存儲同種數據類型的多...
    苦笑男神閱讀 632評論 0 0
  • 有讀者發微信給我:大學剛畢業一個月才3000塊,要怎么理財? 我覺得這位讀者很優秀,至少從思維意識上已經超越了很多...
    玩命十一郎閱讀 715評論 0 7