Java學習筆記—第八章 數組

來源:互聯網
上載者:User

標籤:java學習   空間   元素   數組   

第八章  數組

  1. 定義:在Java中,數組是具有相同資料類型的有序資料的集合,它是一個對象。數組中的每個資料稱為數組元素,通過下標訪問。數組分為一維數組和多維陣列。

  2. 一維數組的聲明:聲明一個數組僅指定了數組名和元素的資料類型,並未指定數組元素的個數和初始值,此時系統不會為數組分配記憶體空間。一維數組的聲明格式如下:

    資料類型[] 數組名;  或者  資料類型 數組名[];

  3. 一維數組的初始化:數組聲明後需要初始化才可以使用,通過初始化可以為數組分配記憶體空間,或者為數組元素賦值。數組的初始化分為靜態初始化和動態初始化。

    (1)靜態初始化:聲明數組的同時為數組元素賦值。無需指定數組的大小,系統會根據元素的個數自動算出數組長度,並分配記憶體空間。適用於元素個數不多或可列舉的情況。文法格式如下:

     資料類型[] 數組名 = {元素1初值, 元素2初值, 元素3初值...};

    (2)動態初始化:指利用new運算子為數組分配記憶體空間。此時數組的聲明和初始化時分開進行的。常用於數組元素較多或無法列舉的情況。文法格式如下:

    資料類型[] 數組名;

    數組名 = new 資料類型[數組長度]; 也可寫成一句:資料類型[] 數組名=new 資料類型[數組長度];

  4. 一維數組的使用:數組名[數組下標];

    (1)數組下標用來唯一標識數組中的每一個元素,可以是整數或運算式。Java中所有數組下標都是從0開始到“數組長度-1”結束。

    (2)數組對象有length屬性工作表示數組長度。

  5. 二維數組聲明:資料類型[][] 數組名; 或 資料類型 數組名[][];

  6. 二維數組的初始化:靜態初始化和動態初始化

    (1)靜態初始化:在聲明數組的同時給元素賦初值。例如:

     int a[][] = {{12},{54,63},{123,456}};

    二維數組也可以看做是一維數組的數組,如上述例子,數組a是由3個長度不同的一維數組組成的二維數組。

    (2)動態初始化:用new關鍵字為數組分配記憶體空間,指定數組元素的行數和列數,但不給數組賦初值。二維數組的動態初始化有兩種方式:

    a.直接方式:在初始化時直接指定行數和列數,適用於數組的每行的列數都相同的情況。例如:

    int a[][] = new int[3][2];

    b.逐級方式:首先為二維數組分配行數,再為每一行分配列數。例如:

    int a[][] = new int[2][];    //定義一個兩行的二維數組

    a[0] = new int[1];           //定義第一行a[0]為1個元素

    a[1] = new int[2];           //定義第二行a[1]為2個元素

  7. 二維數組的使用:二維數組的使用方法與一維數組使用方法相似,都是用下標標識數組中的每一個元素。每一維的下標也是從0開始。文法格式為:數組名[數組下標1][數組下標2];

  8. 對象數組:數組元素的類型為類對象的數組稱為對象數組。對象數組的定義與基本類型數組的定義在形式上是一致的。

    (1)定義對象數組時,只是建立了數組對象引用,並未對對象元素初始化,也為給對象數組分配記憶體空間,因此在定義對象數組後,還要對其初始化。

    (2)對象數組中的每個元素都是一個對象,因此可以使用運算子"."訪問對象中的成員。

  9. 數組作為方法的參數:在Java中,數組可以作為方法的參數傳遞。數組作為方法的參數時傳遞的是引用,因此實參和形參擁有相同的記憶體空間。若在方法中更改了形參的值,實參的值也將被改變。

    (1)數組作為形參時,數組名後的括弧不能省略,括弧的個數和數組的維數相等,不需要給出數組元素的個數。

    (2)數組作為實參時,數組名後的括弧要省略。

    (3)數組元素也可以作為方法的參數傳遞,此時傳遞的是數值,在形參中更改形參的值,實參的值不會被更改。

Java學習筆記—第八章 數組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.