java数组、内存分配

张开发
2026/5/17 20:05:22 15 分钟阅读
java数组、内存分配
1.数组数组定义静态初始化 int[] 变量名 new int[] {}; int[] arr{}动态初始化 int[] 变量名 new int[长度];默认初始化值的规律整数0浮点数0.0字符\u0000 空格 布尔类型 false引用数据类型 null数组的地址值[D776ec8df[ 代表当前是一个数组D代表是double基本数据类型I表示是int类型表示是间隔后面才是真正的数组地址值数组索引 从0开始获取数组的元素arr.length i是索引arr[i]是元素数组的遍历 数组的增删改查一个循环尽量只做一件事情不然会混乱思路数组内存溢出 可以看控制台提示常见操作求最值 定义一个maxarr[0]不能写0要写数组的值!! 从i1开始求和 随机数r.nextInt(100)1;交换数据 i,j 一直到ijfor(int i0, int jn-1; i j;i,i--)打乱所有数据随机索引感觉不是很严谨2.Java内存分配 JVMJDK8之前方法区和堆 在一起JDK8改进取消方法区增加元空间栈方法运行时使用的内存堆存储对象和数组new创建的方法区存储可运行的class文件本地方法栈JVM再使用OS时使用寄存器给 CPU使用数组的内存图 会同时用到栈和堆当两个数组指向同一个内存小空间其中一个数组对值进行改变其他数组再去访问时访问到的是已改变的值。

更多文章