0
点赞
收藏
分享

微信扫一扫

Java 数组

我是小瘦子哟 2022-02-08 阅读 61

Java数组

数组的创建

两种方法:(这里举例为int数据类型)

int [] arr = {1,2,3,4,5};  //第一种
int [] brr = new int[5];  //第二种

两种方法的长度都是5,数组的下标也都是arr(brr)[0] - arr(brr)[4]

数组排序

例子如下:

		int [] arr = {1,8,5,6,9,7};
		Arrays.sort(arr);
		System.out.println (Arrays.toString(arr));

结果:

在这里插入图片描述

在这里插入图片描述
注意图片中的文字

1.每个页块并不是直接存放数字,是它对应的二进制,这里为了没关只文字标注了一下

2.一页块4字节(int),一字节=8bit

3.如果数组地址是x,要想获取第y个数值的位置:
address = x+(y-1)*m
m是每个数值的占据物理单元个数
这里的y是以1开头的
y-1就是数组的索引
address = x+arr[i]*m

如图数组第一个数的索引为0,开头的地址是46,公式就为46+(1-1)*4=46

如图数组第一个数的索引为1,开头的地址是46,公式就为46+(2-1)*4=50

以此类推。。。

二维数组

在这里插入图片描述
在这里插入图片描述
当进行修改的时候,就会出现开辟新空间,地址改变,指向新开辟的空间,而不被指向的则为无效空间,后续被覆盖,如图:

在这里插入图片描述

"三维数组"


int[][][] arr3= new int[][][]{
{{1,2,3},{4,5,6},{7,8,9}},
{{1,2,3},{4,5,6},{7,8,9}},
{{1,2,3},{4,5,6},{7,8,9}},
{{1,2,3},{4,5,6},{7,8,9}}

}

指向

在这里插入图片描述
代码如下,看图很流畅的理解
在这里插入图片描述

出战入栈

在这里插入图片描述代码如下,有视频演示出战和入栈
在这里插入图片描述

总结

1.sataic静态,如上图,加与不加的差别,当不加static,我们想在Test类里使用Person类里的m1方法时发现并不能使用,只能用加了static的m3
在这里插入图片描述
当我们想要使用的时候,就需要new一个Person();然后就可以使用里面的方法了
在这里插入图片描述

总结起来两句话:
public void 修饰是非静态方法,该类方法属于对象,在对象初始化(new Object())后才能被调用;
public static void 修饰是静态方法,属于类,使用类名.方法名直接调用;

2.变量的定义域也是栈结构,栈是控制执行顺序和定义域的

举报

相关推荐

java数组

JAVA数组

数组(java)

java 数组

【java】数组

【Java】数组

Java数组

java——数组

0 条评论