java--数组学习(2)数组的内存分析,数组三种初始化,多维数组
1.java的内存分析
2.数组的初始化
例子代码
里面有个0-9十个空间未赋值的情况下,里面都有值。基本类型是0,String类型是null
package com.wang.array;
// int[] a = num;
// num = new int[10];
public class ArrayDemo02 {
public static void main(String[] args) {
//静态初始化:创建+赋值,{}花括号里面是数组
//创建 + 赋值
int[] a = {1,2,3,4,5,6,7,8};
// Man[] mans = {new Man1(1,1),new Man2(2,2)};
System.out.println(a[0]);
//动态初始化:包含默认初始化
/*
int[] a = new int[2];
a[0]=1;
a[1]=2;
*/
int[] b = new int [10];
b[0] = 10;
System.out.println(b[0]);
System.out.println(b[1]);
System.out.println(b[2]);
}
}
3.多维数组
-
多维数组
-
多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组
-
二维数组
int a[][] = new int[2][5];
-
二维数组a可以看成一个两行三列的数组
-
package com.wang.array;
import java.util.concurrent.ForkJoinPool;
public class ArrayDemo05 {
public static void main(String[] args) {
//[4][2]
/*4行两列
1,2 array[0]
2,3 array[1]
3,4 array[2]
4,5 array[3]
*/
int[][] array = {{1,2},{2,3},{3,4},{4,5}};
System.out.println(array[3][0]);
System.out.println("=================");
System.out.println(array.length);
System.out.println(array[0].length);
System.out.println("=================");
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[i].length; j++) {
System.out.println(array[i][j]);
}
}
//printArray(array[0]);
}
public static void printArray(int[] arrays){
for (int i = 0; i < arrays.length; i++) {
System.out.print(arrays[i]+" ");
}
}
}