大家好,我们今天继续来看java中数组这方面的知识点,那么话不多说,我们直接开始。
一.数组的使用
1.数组中元素访问
数组在内存中是一段连续的空间,空间的编号都是从0开始的,依次递增,数组可以通过下标访问其任意位置的元素. 也可以进行修改
如:array[3];array[1]=100;
注意事项
1.数组是一段连续的空间,因此支持随机访问,即通过下标快速访问数组中任意位置的元素
2,下标从0开始,介于(0,N)之间不含N,N为元素个数不能越界,否则今报出下标越界异常.
二.遍历数组.
所谓遍历是指数组中的所有元素部访问一遍,访问是指数组中的元素来进行某种操作.
注意:
1,在数组中可以通过数用对象.length来获取数组长度
1.foreach是for循环的另外一种使用方式,能够更方便的完成对数组的遍历,可以避免循环条件和更新语句写错.
2.数组是引用类型.
1.初始JVM的内存分布
内存是一段连续的存储空间,主要用来存储程序运行时数据的.
1、程序运行时代码需要加载到内存
2.程序运行产生的中间数据要存放在内存
1.程序中的常量也要保存
4.有些数据可能需要长时间存储,而有些数据当方法进行结束后就要被销毁.
下面大家看看我画的一些数组和方法作用域的理解:
2.基本类型变量和引用类型变量的区别.
.基本数据类型创建的变量,称为基本变量,该变量空间中直接存放的是其所对应时值.
.而引用数据类型创建的变量,一般称为对象的引用,其空间中存储的是对象所在空间的地址。
例:public static void func(){
int a =10;
int b = 20;
int[] array = new int[]{1,2,3};
在上述代码中,a,b,array都是函数内部的变量(局部变量),因此其空间都在main方法对应的栈帧中分配.
a,b是内置类型的变量,因此其空间中保存的就是该变量初始化的值..
away是数据类型的引用变量,其内部保存的内容可以简单理解成是数组在堆空间中的首地址。
从上图可以看到,引用变量并不直接存储对象本身,可以简单理解成存储的是对象在堆空间的起始地址,通过该地址,引用变量便可以去操作对象..
下面我们可以看个例子:
注:
当引用重新引用一个对象的时候,一个对象如果没有了引用变量引用它了,此时这个对象就被JVM自动回收了.
例如:设x为引用,y为对象,y是x的数,一个x不能对应多个y,但一个y可以由不同的x对应.
一个引用不能同时指向多个对象.因为一个变量里面只能存储一个值。
那么今天分享就到这里,谢谢大家!!!