java数组
数组概念:
在计算机中分配多个连续的存储空间
使用存储空间本质上是使用值。
定义数组的语法:
获得连续存储空间的方式:
动态定义:
定义的同时赋值:
数据类型[] 数组名 = new 数据类型[长度]
先定义后赋值:
数据类型[] 数组名;
数组名 = new 数据类型[长度];
静态定义:
复杂下写法:
定义的同时赋值:
数据类型[] 数组名 = new 数据类型[]{值,值,........};
先定义后赋值:
数据类型[] 数组名;
数组名 = new 数据类型[]{值,值,........};
简写方式:
定义的同时赋值:(常用)
数据类型[] 数组名 = {值,值,........};
先定义后赋值:
语法不允许
认识数组:
定义一个数组:int[] arr = new int[6];
int[]:数据类型:int类型的数组,类型!
arr:数组名:变量:数组是引用数据类型,存的是地址!
6:是数组长度
数组每个存储空间里面存储的值:值:元素..
存值语法:
数组名[索引值]=值;
取值语法:
数组名[索引值];
注意:
数组名:本质上也是一个变量,存的是地址值
数据类型[]:数据类型为数组类型,表示对应数据类型的数组类型 (当为动态定义时 int的默认值是0 String的默认值是null)
静态定义的长度根据值的个数确定
特点:
1.索引值是从0开始的,最大索引值,为长度减1
2.数据类型,限定了数组存储空间,可以存储放值的类型
3.连续存储空间,会根据数据类型,分配默认值
引用数据类型的默认值是null,基本数据类型的默认值是0.
4.数组一旦定义好了,长度不变
堆栈分析:JVM内存图:
栈:保存是变量。数组名和地址
堆:凡是new出来都在里面
作用:分析引用数据类型......学习的类,会经常用过堆栈分析
数组的常见问题:
1.数组越界:当取值或查值索引的大小大于或者等于数组的长度时
2.空指针异常int[] arr = null; arr.length相当于null.length,其他数据类型也会出现
3.return不知道如何写返回值
二维数组(了解):
一个数组中保存的是一个一维数组:三维,四维数组类似
二维数组定义的语法:
动态定义:数据类型[][] arr = new 数据类型[长度1][长度2];
长度1:二维数组中,保存一维数组的个数.
长度2:二维数组中一维数组的长度
静态定义:数组类型[][]arr ={{1,2,3},{4,5,6},{7,8,9}};
值传递值引用:
值传递:形式参数类型是基本数据类型
值引用:形式参数类型是引用数据类型
基本数据来说:传递是值,方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容。
引用数据来说:传递的是对值的引用!,传递的是地址值。方法调用是,实际参数是数组,这时实际参数与形式参数指向同一个地址,在方法执行中,对形式参数的操作实际上就是对实际参数的操作
上一篇: Java反射拾遗
下一篇: hibernate4入门
本文网址:https://www.wyxxw.cn/blog-detail-8-9-101.html
非特殊说明,本文版权归原作者所有,转载请注明出处
提示:本站所有资源仅供学习与参考,请勿用于商业用途。图片来自互联网~如侵犯您的权益,请联系QQ:1067507709.
提示:转载请注明来自:https://www.cnblogs.com/Alinexia/p/8432553.html 。 转载人:momo