数组概述
数组是用来存储同一种数据类型多个元素的容器。
数据类型:可以是基本数据类型,也可以是引用数据类型。
容器:比如说纸箱,衣柜,教室等,可以存放多个事务。
直接输出数组名,得到的是数组的内存地址值。
数组中未手动赋值(初始化)的元素,是有默认值的。例如:int型默认值是0,double默认值是0.0,String默认值是null
数组的长度:数组名.length
数组的最大索引:数组长度-1
数组的定义和访问
数组定义格式一、动态初始化:只指定长度,有系统给出默认值
数据类型[] 数组名 = new 数据类型[长度];
//定义一个长度为10的整型数组
int[] sum = new int[10];
数组定义格式二、静态初始化:给出初始值,由系统决定数组长度
数据类型[] 数组名 = new 数据类型[]{元素1、元素2、元素3…};
int[] sum2 = new int[]{1,2,3…};
数组定义格式三、静态初始化:给出初始值,由系统决定数组长度
数据类型[] 数组名 = {元素1、元素2、元素3…};
int[] sum3 ={1,2,3};
格式介绍
数据类型:即数组中存储元素的数据类型,可以是基本数据类型,也可以是引用数据类型
[]:表示数组
数组名:数组的变量名,遵循标识符命名规范
new:创建数组的关键字,通过new开辟内存空间
长度:即数组长度,数组最多能够存放元素的个数,数组长度在定义时指定,不可更改。
数组访问
通过数组的索引访问数组的元素
索引:也叫下标、脚标,是数组元素距离数组起始位置的偏移量第一个元素的偏移量为0,所以数组的索引从0开始
格式:数组名[索引]
取值:数组名[索引]
int[] arr = {1,2,3};
System.out.println(arr[0]); 取下标为0的值,输出1。
赋值:数组名[索引]=值;
int[] arr = {1,2,3};
arr[0] = 6; 给下标为0的元素赋值为6
System.out.println(arr[0]);
数组的初始化
在内存中为数组开辟连续空间并为每个元素赋值的过程
内存:计算机的重要组件,用于程序运行中临时存储数据。
连续空间:数组元素在内存空间中的存放位置是连续的
java程序的内存分配
方法区:存储可运行的class文件,包含方法、静态成员,常量等
栈(zhan):方法运行时使用的内存,特点是"后进先出",即最先进入栈区的方法最后出栈,比如main方法
堆:存储new出来的数组或对象
本地方法栈:jvm在调用操作系统功能时使用,与开发无关
寄存器:CPU使用,与开发无关
数组使用常见问题
1、数组索引越界异常:ArrayIndexOutOfBoundsException
当访问了不存在的索引时
异常:即非正常情况,可以简单理解为程序运行过程中出现的错误。
2、空指针异常:NullPointerException
数组引用存储的值为null而非数组的地址值时。
本人小白,本文为个人总结资料。
文章如有问题请大神指出,如有看不懂的地方可以评论私信交流。欢迎大家讨论交流。
本章对大家有帮助的话可以点点赞加个关注。
















