数组
概念:数组是一组具有“相同类型”的数据的集合。
定义方式:在Java中,定义数组的语法有如下两种:
数据类型[]数组名=new数组类型[数组长度];
或者:
数据类型 数组名[]=new 数据类型[数组长度];"不建议使用"
定义数组时一点要指定数组名和数组类型。
必须书写”[]“,表示定义了一个数组,而不是一个普通的变量。
“[数组长度]”决定连续分配的空间的个数,通过数组的length属性可获取此长度。
数组的数据类型用于确定分配的每个空间的大小。
数组元素的表示与赋值:
由于定义数组时内存分配的是连续的空间,所以数组元素在数组理顺序排列编号,该编号即元素下标,他标明了元素在数组中的位置。首元素的编号规定为0.后面一次递增,增长数为1.
数组的初始化方式:
所谓的初始化,就是在定义数组的同时完成赋值操作。语法如下:
数据类型[]数组名={值1,值2,值3,...............,值n};
或者
数据类型[]数组名=new数据类型[]{值1,值2,值3,...............,值n};
数组遍历:
在编写程序时,数组和循环往往结合在一起使用,可以大大的简化代码,提高编写效率。通常使用for循环遍历数组。
数组在内存中的存储方式:
数组对应的数据结构为线性表
线性表在内存中的存储方式为:一段连续的内存空间(所以,定义数组必须指定长度)
栈中存放的是首地址数组第一个元素的位置
寻找某个元素的方法是:使用首地址+偏移量+新地址
为什么一定要指明数组长度:jvm要在内存中开辟对应长度的地址连续的内存空间
关于下标越界:
下标是从0开始
数组下标越界异常,当运行代码,出现错误提示时,说明:访问数据元素时,下标值小于01或者大于等于数组长度