数组,Java的数组和C的数组有大区别,首先在数组声明的时候
- 数组声明
数组的元素类型 数组名[]; 数组的元素类型 []数组名; 数组的元素类型 数组名[][]; 数组的元素类型 [][]数组名;
float boy[];
float []boy;
float boy[][];
float [][]boy;
这些都可以,也就是说数组名可以在括号后面
- 数组元素个数指定
int a[12];
这是错误的,因为Java不能在声明的时候来指定原色个数
只能
int boy[];
boy = new int[12];
也就是 数组名 = new 数组元素的类型[数组元素的个数]; 不过也可以声明数组和创建数组一起
float boy = new float[12];
数组元素的类型 数组名 = new 数组元素的类型[数组元素的个数];
这就是关于数组的声明和创建了,还有一点,就是数组的元素个数可以使用int变量进行赋值
int a = 12;
float boy = new float[a];
数组元素的使用和数组元素的赋值都和C一样
- 接下来是length的使用,
一段代码说明问题
float a = new float[12];
float b = new float[2][12];
这时候a.length是12,b.length是2
- 数组的引用和使用
一段代码
a[] = {1,2,3};
b[] = {1,2};
a = b;
这种情况,a[] = {1,2};a[]的元素自然就被释放了
int ab = System.identityHashCode(a);
//这个时候就会的到a的引用
Syste.out.print(a);
//这个时候会输出一些和前缀有关的信息当然还是有引用
//不过对于char的数组只会输出全部的值
只有在有字符串的时候才会对于char输出带前缀的引用,比如我们用一个空的字符串(但他也是个字符串)来出发这个机制System.out.print("" + a);