java基礎——數組

數組

Java內存的分配

  1. 棧內存:局部變量(在方法定義中的變量都是局部變量)執行程序以前會入棧,執行完成後會彈棧。
  2. 堆內存:存每個「new」出來的數據,並分配內存地址以及數據初始化值。使用完會等待JVM垃圾回收去自動回收。每"new"一次都會在棧內存中開闢一個新空間。
  3. 方法區:加載.class文件先到方法區。
  4. 其餘:本地方法區(儲存和系統相關的信息),寄存器(CPU)。

數組的定義

  1. 數組是一個用來存儲相同類型的數據的容器,它能夠儲存多個變量(元素),但儲存的變量的數據類型要一致。java

  2. 數組的定義格式有兩種:1. 數據類型[] 數組名;2. 數據類型 數組名[]。(推薦使用第一種方法)數組

  3. 數組初始化(上文中的「new「):Java中的數組須要先初始化才能使用。初始化就是分配儲存空間。分爲靜態初始化和動態初始化。jvm

    靜態初始化:由咱們賦值,由系統計算長度。靜態初始化的簡寫方式:int[] a={10,20,30,40}。格式:數據類型[] 數組名 = new 數據類型[]{元素1,元素2,…};指針

    動態初始化:系統分陪儲存空間和初始值,咱們只須要錄入數據。格式:數據類型[] 數組名=new 數據類型[數組長度];索引

  4. 數組的定義語法:1.動態定義方式:首先由咱們規定數組的長度,系統賦默認值。建立一個數據類型的數組(沒有賦值時默認是0)(布爾類型默認是FALSE)。以後向數組中存數據,當咱們分配好數組後系統會給分配索引(角標)從零開始,經過索引存數據。取出數組中的元素時也根據索引來取出。未從新賦值時就取默認值。接口

  5. 引用數據類型:簡單來講,使用new關鍵字初始化出來的東西就稱之爲引用數據類型(數組 接口 類)。多個引用能夠指向同一個空間。內存

數組的各類特性

  1. 數組長度:數組長度就是數組中有多少個元素。最後一個索引(角標)是數組長度減一,即:length-1.io

  2. 數組異常:數組索引越界異常(Array Index Out Of Bounds Exception),就是說在獲取或者輸入數值時超出數組長度。class

    空指針異常(Null Pointer Exception):數組的空間沒有初始化好,引用不指向任何空間就會出現空指針異常。(人爲至空,能夠讓jvm儘早回收堆內存中new的數據)容器

  3. 數組的遍歷:就是依次輸出數組中的每個元素。具體操做程序:

    for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]);

相關文章
相關標籤/搜索