您的位置:首页 > 编程语言 > C语言/C++

java从头开始学习到选择c++ (四)数组需要注意的地方

2017-03-07 10:04 351 查看
1 创建

1)ArrayTye ArrayName[];

2)  ArrayTye[] ArrayName;

符号“[]”说明声明的是一个数组对象,这两种方式没有任何区别,但是第二种方式可以同时声明多个数组,使用较为方便。

上面的语句只是声明了一个数组对象,还没有对其分配内存,所以不可以存放,也不能访问它的元素,可以用new对数组分配内存空间

arry1 = new int[5];

2 length实例变量

java中的数组是一种对象,它会有自己的实例变量,事实上,数组只有一个公共实例变量,也就是length变量,这个变量指的是数组的长度。for(int i=0;i<arrayName.length;i++)
3 数组拷贝

数组拷贝可以直接把一个数组变量拷贝给另一数组,这时候数组都指向同一个数组

array1 = array2;

public class Demo {

public static void main(String[] args) {
int[] array1 = {1,2,3};
int[] array2 = {4,5,6};
array2 = array1;
for(int i =0;i<array2.length;i++)
{
System.out.println(array2[i]);
}
}
}运行结果:
1
2
3
public class Demo {

public static void main(String[] args) {
int[] array1 = {1,2,3};
int[] array2 = {4,5,6};
array2 = array1;

array2[2] = 99;
System.out.println(array1[2]);
}
}
运行结果为: 99
可以发现array1和array2的元素都改变了。

但这样的处理方法有些“粗暴”,可以使用System类中的arraycopy

System.arraycopy(fromArray,formIndex,toArray,toIndex,length)

public class Demo {

public static void main(String[] args) {
int[] array1 = {1,2,3,4,5,6,7,8,9};
int[] array2 = {10,20,30,40,50,60,70,80,90};
System.arraycopy(array1, 0, array2, 2, 5);
for(int i =0;i<array2.length;i++)
System.out.print(array2[i]+" ");
}
}运行结果:
10 20 1 2 3 4 5 80 90
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java