数组_声明与初始化

数组_声明与初始化
概述
  1. 概念

    数组(Array),是多个 相同类型数据 按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。

  2. 特点

    • 数组本身是 引用数据类型,而数组中的元素可以是 任何数据类型,包括基本数据类型和引用数据类型。
    • 创建数组对象会在内存中开辟一整块连续的空间。占据的空间的大小,取决于数组的长度和数组中元素的类型。
    • 数组一旦初始化完成,其长度就是确定的。数组的长度一旦确定,就不能修改。
  3. 分类

    1. 按照元素类型
      • 基本数据类型元素:每个元素位置存储基本数据类型的值
      • 引用数据类型元素:每个元素位置存储对象(本质是存储对象的首地址)
    2. 按照维度
      • 一维数组:存储一组数据
      • 二维数组:存储多组数据,相当于二维表,一组数据代表一行
一维数组
  1. 一维数组的声明

格式:

//推荐
元素的数据类型[] 数组名;

如: int [] arr;  double[] arr2; String[] arr3;

//不推荐
元素的数据类型  一维数组名[];

数组名:就是代表某个数组的标识符,数组名其实也是变量名,按照变量的命名规范来命名。数组名是个引用数据类型的变量,因为它代表一组数据。

  1. 一维数组的初始化

    1. 静态初始化:数组变量的初始化和数组元素的赋值操作同时进行
    //格式一: 
    数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,...};
     
     或
         
     数据类型[] 数组名;
     数组名 = new 数据类型[]{元素1,元素2,元素3,...};
    
    eg:
    	int  []  arr  =  new  int [] {1,2,3,4,5};int []  arr; /数组的声明
     	 arr  =  new  int [] {1,2,3,4,5};
    
    
    //格式二:
    数据类型[] 数组名 = {元素1,元素2,元素3...};
    
    eg:
        int[] arr = {1,2,3,4,5};
    

    说明:new:关键字,创建数组使用的关键字。因为数组本身是引用数据类型,所以要用new创建数组实体。

    1. 动态初始化:数组变量的初始化和数组元素的赋值操作分开进行
    数组存储的元素的数据类型[] 数组名字 = new 数组存储的元素的数据类型[长度];
    
    或
    
    数组存储的数据类型[] 数组名字;
    数组名字 = new 数组存储的数据类型[长度];
    
    eg:
        int[] arr = new int[5];
    
    	int[] arr;
    	arr = new int[5];
    

注意:

  • 每个数组都有一个属性length指明它的长度,例如:arr.length 指明数组arr的长度(即元素个数)
  • 每个数组都具有长度,而且一旦初始化,其长度就是确定,且是不可变的。
二维数组
  1. 二维数组的声明

格式:

//推荐
元素的数据类型[][] 二维数组的名称;
eg:int[][] grades;

//不推荐
元素的数据类型  二维数组名[][];
eg:int grades [][] ;

//不推荐
元素的数据类型[]  二维数组名[];
eg:int[] x, y[];  //x是一维数组,y是二维数组
  1. 二维数组的初始化

    1. 静态初始化

      int[][] arr = new int[][]{{3,8,2},{2,7},{9,0,1,6}};
      
    2. 动态初始化

      //格式一:
      int[][] arr = new int[3][2];
      
      1. 确定行数和列数
      2. 再为元素赋新值:arr [1] [2] = 12;
      
      //格式二:
      int[][] arr = new int[3][];
      1. 二维数组中有3个一维数组。
      
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值