java复习之数组

一、数组创建方式

方式一:静态创建

数据类型[] 变量名=new 数据类型[]{数据元素1、数据元素2、、、}
数据类型 变量名[]=new 数据类型[]{数据元素1、数据元素2、、、}
简化格式:
数据类型[] 变量名={数据元素1、数据元素2、、、}
数据类型 变量名[]={数据元素1、数据元素2、、、}

适用范围:已知数据元素的具体值 

方式二:动态创建

数据类型[] 变量名=new 数据类型[元素个数]
数据类型 变量名[]=new 数据类型[元素个数]

适用范围: 数据元素的大概个数

二、数组访问方式及常见问题

访问格式:

变量名[下标]

常见问题:

数组越界、空指针异常。

三、数组从内存角度理解

背景知识之jvm内存分布:

栈:程序运行时执行方法的区域。可理解为具体执行每一段代码的地方。

堆:保存数据的地方。new的数据都保存在这里。所有引用类型的实列。

方法区:保存运行的class文件。

本地方法栈:本地接口库里调用的方法,就是java里面native关键字修饰的方法。

寄存器:结合cpu的

示例

int a[]={1,2,3};
1、堆区开辟空间保存1、2、3三个数。
2、a=堆区的地址值。
int[] b=a;
b=a=堆区的地址值。

理解:上诉访问a和b的值是相同的。可以理解为变量名保存的是数据存储位置的地址值,本质上只要地址值相同访问的就是同一个数据元素。 与变量的具体名字无关。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值