Java中的数组

数组概述和定义格式

数组的概念

  数组是存储同一种数据类型多个元素的集合。
  数组即可以存储基本数据类型,也可以存储引用数据类型。

数组的定义格式

  格式1: 数据类型 [] 数组名;
  格式2:数据类型 数组名[];
例:

int[] a;  //定义了一个int型的数组a
int  a[];  //定义了一个int型的a数组

数组的初始化和动态初始化

数组的初始化

  为数组中的数组元素分配内存空间,并为每个数组元素赋值,注意java中的数组必须先初始化,然后才能使用。

初始化的分类

  动态初始化: 只定义长度,由系统给出初始化值
  格式: 数组类型[]数组名=new 数组类型[数组长度];
注意数组长度就是数组中元素的个数
例:

int[] a= new int[3];  //定义了一个int型的数组a,长度为3

  静态初始化: 给出初始化值,由系统决定长度

java中的内存分配

  在写数组的内存分配之前,先聊聊Java中的内存分配
1、栈:从放局部变量(在方法定义中或方法声明上的变量)
2、堆:存放new出来的东西
  特点:a、每一个new出来的东西都会为其分配一个地址值
     b、每一个变量都有一个默认值
    byte,short,int,long默认值为0
    float,double默认值为0.0
    char默认值为‘\u0000’(空格)
    boolen默认值为false
    引用数据类型默认值为null
3、方法区:存储类的.class文件,main方法之类的
4、本地方法区:(和系统相关)
5、寄存器:(cpu使用)

数组内存图解

  3个引用2个数组在这里插入图片描述

二维数组概述

二维数组定义

  二维数组其实就是每个元素为一维数组的数组

二维数组的格式(1)

  数据类型[][] 变量名 = new 数据类型[m][n];
  m表示这个二维数组有多少个一维数组 必须写上
  n表示每一个一维数组的元素个数 可选
例:

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

  定义了一个二维数组arr
  这个二维数组有3个一维数组,名称是arr[0],arr[1],arr[2]
  每个一维数组有2个元素,可以通过arr[m][n]来获取
  表示获取第m+1个一维数组的第n+1个元素

二维数组的格式(2)

  数据类型[][] 变量名 = new 数据类型[m][];
  m表示这个二维数组有多少个一维数组
  这一次没有直接给出一维数组的元素个数,可以动态的给出。
例:

int[][] arr = new int[3][];
arr[0] = new int[2];
arr[1] = new int[3];
arr[2] = new int[1];
二维数组的格式(3)

  数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}…};
  简化版:
  数据类型[][] 变量名 = {{元素…},{元素…},{元素…}};
例:

int[][] arr = {{1,2,3},{4,5,6},{7,8,9}};

二维数组内存图解

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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值