国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

一維數組內存分析及數組元素的創建和使用

2019-11-11 05:31:58
字體:
來源:轉載
供稿:網友

一、數組概述

    1. 數組可以看成是多個相同類型數據組合,對這些數據的統一管理。

    2. 數組變量屬引用類型,數組也可以看成是對象,數組中的每個元素相當于該對象的成員變量。

    3. 數組中的元素可以是任何數據類型,包括基本類型和引用類型

二、一維數組的聲明

    1.一維數組的聲明方式: type var[ ] ;或type[ ] var ;

    2.java語言中聲明數組時不能指定其長度(數組中元素的個數),

        例如: int a[5] ;    非法

三、數組對象的創建

     Java中使用關鍵字new創建數組對象,格式為:數組名 = new 數組元素的類型 [數組元素的個數]

       例如:

public class Test {	public static void main(String args[]) {		s = new int[5];		for (int i=0; i< 5; i++) {			s[i] = I;		}	}}

四、元素為引用類型的數組

元素為引用數據類型的數組中的每一個元素都需要實例化。

public class Test {	public static void main(String args[]) {		Date[] days;		days = new Date[3];		for (int i = 0; i < 3; i++) {			days[i] = new Date(2004,4,i+1);		}	}		class Date {		int year;int month;int day;		Date(int y,int m,int d) {			year = y;			month = m;			day = d;		}	}}

內存分析:

days

Date[] days聲明數組時,由于未創建數組對象,棧內存中內容為NULL。

執行到days = new Date[3],棧中內容更新,指向堆中new出來的對象。堆中的內容也沒有初始化,所以也是NULL

執行完for循環之后,days[0], days[1], days[2]分別都指向了一個新的對象

五、數組初始化

    1. 動態初始化

         數組定義與為數組分配空間和賦值的操作分開進行,先分配,后賦值。

             int a[ ] ;   //定義

             a = new int [3] ;  //分配空間

             a[0] = 3 ; a[1] = 9 ; a[2] = 8 ;   //賦值

    2. 靜態初始化

         在定義數組的同時就為數組元素分配空間并賦值。例如:

              int a [ ] = {3,9,8};

            或

              Date days [ ] = {new Date(1,4,2004),

                                        new Date(2,4,2004),

                                        new Date(3,4,2004)

                                      }

     3. 數組元素的默認初始化

               數組是引用類型,它的元素相當于類的成員變量,因此數組分配空間時,每個元素也按照成員變量的規則被隱式初始化。如,double 類型,默認 0.0;引用類型,默認NULL; 邏輯類型,默認 false。

六、數組元素的引用

      1. 定義并用運算符 new 為之分配空間后,才可以引用數組元素中的每個元素,數組元素的引用方式為:

                                                 arrayName[index]       2.  index為數組元素下標,可以是整型常量或整型表達式。如:a[3], b[i], c[6*i] 

      3.  數組元素下標從0開始;長度為n的數組的合法下標取值范圍為 0~n-1

      4.  每個數組都有一個屬性 length 指明它的長度。 a.length的值為數組a的長度(元素個數)

                     注意length后不要加括號,這里的length是一個屬性,不是一個方法。與String區分開來。

                   


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 漾濞| 宾阳县| 宣城市| 马鞍山市| 炎陵县| 潜江市| 茂名市| 巴楚县| 宁德市| 呼伦贝尔市| 佛坪县| 资阳市| 博乐市| 乌拉特前旗| 淮阳县| 清流县| 衡山县| 阳春市| 廉江市| 宣恩县| 西乡县| 康定县| 新龙县| 镶黄旗| 唐河县| 洛阳市| 永定县| 平山县| 灵川县| 盐亭县| 临泽县| 棋牌| 荔浦县| 蕉岭县| 延庆县| 闻喜县| 临洮县| 芦溪县| 油尖旺区| 彰化市| 栾城县|