数组
一、一维数组的声明与初始化
要点:
- 数组一旦被创建,它的大小将不能被改变
- 同一数组的数据类型必须是相同的
- 创建一个数组必须指定其长度
数组的静态初始化
int arrays[] = new int[]{1,2,3,4,5,6} //方式1
int arrays[] = {1,2,3,4,5,6} //方式2
int arrays[] = new int[6]{1,2,3,4,5,6} X !!!此方式错误
数组的动态初始化
int arrays[] = new int[3];
arrays[0] = 1;
arrays[1] = 2;
arrays[2] = 3;
数组声明:
数组赋值:
二、数组的基本操作
1.数组的定位
int [] arrays = new int[6];
int item = arrays[4];
int item2 = arrays[6]; //会出现数组越界
int item3 = arrays[-1]; //数组越界
2.数组的替换
arrays[3] = 100;
3.数组的求长
int length = arrays.length; //注意length是数组的属性,没有括号,String的length是方法,有括号
4.反转数组
/*法1:空间换时间*/
public class Test{
public static void main(String[] args){
// int[] arrays = new int[6]; //动态声明
int[] arrays = {1,2,3,4,5,6}; //静态声明
//在原有位置上做反转,不创建新的数组
for(int i = 0; i < arrays.length/2;i++){
int temp = arrays[i];
arrays[i] = arrays[arrays.length-1-i];
arrays[arrays.length-1-i] = temp;
}
for(int i = 0; i < arrays.length; i++){
System.out.println(arrays[i]);
}
}
}
/*法2:时间换空间*/
public class Test{
public static void main(String[] args){
int[] arrays = {1,2,3,4,5,6};
int[] result = new int[arrays.length];
//新建新的数组做反转
for(int i = 0; i < arrays.length; i++){
result[i] = arrays[arrays.length-i-1];
}
for(int i = 0; i < arrays.length; i++){
System.out.println(arrays[i]);
}
}
}