Java基礎(chǔ)——數(shù)組

特征

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

聲明

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

Java是面向?qū)ο蟮恼Z言,數(shù)據(jù)類型[]可以看成是一個(gè)整體類型,即數(shù)組類型,第二種是C 語言數(shù)組的聲明方式。

int[] intArr;
String[] stringArr;

初始化

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

new 數(shù)據(jù)類型[數(shù)組長度]

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)靜態(tài)初始化

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

給出初始化值,不需要指定數(shù)組的長度,根據(jù)初始值的個(gè)數(shù)決定長度.

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

數(shù)組的初始化具體示例用法

public class Main {

    public static void main(String[] args){
        int [] arr = new int[10];// 聲明數(shù)組
        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

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

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

NullPointerException

空指針異常,使用變量引用一個(gè)數(shù)組的時(shí)候,必須執(zhí)行一個(gè)有效的數(shù)組對(duì)象,如果該變量值為null,則意味沒有指向任何數(shù)組,此時(shí)通過變量名稱訪問數(shù)組元素會(huì)出現(xiàn)空指針異常

public static void main(String[] args) {
       int [] arr ={1,2,3,4};
       System.out.println(arr[0]);
       arr = null;
       System.out.println(arr[0]);
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

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

友情鏈接更多精彩內(nèi)容