代码:
public class ArrTest { public static void main(String[] args) { // 1. 声明一个长度为6,用于存放整数的一维数组 int[] arr = new int[6]; // 2. 打印数组中的元素值 for(int i =0 ;i<arr.length;i++) { System.out.println("打印数组元素 ["+i+"]= "+arr[i]); } System.out.println(); // 3. 为数组中下标为2的元素赋值为33 arr[2] = 33; System.out.println("打印arr[2] ="+arr[2]+" "); // 4. 为数组下标为8的元素赋值66 // arr[8] = 66; //编译通过,运行报错: 数组下标越界异常 // System.out.println(arr[8]); // 5. 给数组中所有元素进行赋值 for(int i =1;i<7;i++) { arr[i-1] = i*10 + i; } // 6. 打印数组中的元素值 for(int i =0 ;i<arr.length;i++) { System.out.println("打印数组元素 ["+i+"]= "+arr[i]); } } }
结果:
打印数组元素 [0]= 0 打印数组元素 [1]= 0 打印数组元素 [2]= 0 打印数组元素 [3]= 0 打印数组元素 [4]= 0 打印数组元素 [5]= 0 打印arr[2] =33 打印数组元素 [0]= 11 打印数组元素 [1]= 22 打印数组元素 [2]= 33 打印数组元素 [3]= 44 打印数组元素 [4]= 55 打印数组元素 [5]= 66
代码:
public class ArrLnitTest { public static void main(String[] args) { // 1. 声明一个数组,拥有存储数据: 11 22 33 44 55 int[] arr = {11, 22, 33, 44, 55}; // 2. 打印数组中的每一个元素值 for(int i=0;i<arr.length; i++) { System.out.println("打印arr数组中的元素 ["+i+"] ="+arr[i]); } System.out.println(); // 1.使用两种方式的结合来声明数组 int[] brr = new int[] {11, 22, 33, 44, 55}; // 2. 打印数组中的每一个元素 for(int i=0;i<brr.length; i++) { System.out.println("打印brr数组中的元素 ["+i+"] ="+brr[i]); } } }
结果:
打印arr数组中的元素 [0] =11 打印arr数组中的元素 [1] =22 打印arr数组中的元素 [2] =33 打印arr数组中的元素 [3] =44 打印arr数组中的元素 [4] =55 打印brr数组中的元素 [0] =11 打印brr数组中的元素 [1] =22 打印brr数组中的元素 [2] =33 打印brr数组中的元素 [3] =44 打印brr数组中的元素 [4] =55
数组的拷贝 (即,元素的复制,本质上就是赋值)
import java.util.Arrays; public class ArrCopyTest{ public static void main(String[] args) { // 1. 准备两个数组,分别使用两种不同的声明方式 int[] arr = {10, 20, 30, 40, 50, 60}; int[] brr = new int[6]; // 2.实现将第arr数组中下标为1~3之间的元素拷贝到第brr数组中 /* 原始方式: brr[0] = arr[1]; brr[1] = arr[2]; brr[2] = arr[3];*/ /* 循环方式: for(int i=1;i<=3;i++) { brr[i-1] = arr[i]; } */ // 实现数组的拷贝 System.arraycopy(arr, 1, brr, 0, 3); // 3. 打印brr数组中的元素值 for (int i=0;i<brr.length;i++) { System.out.println("打印brr数组中的元素值 ["+i+"]= "+brr[i]); } System.out.println(); // 4. 实现数组元素的排序,按照升序排 int[] crr = {20, 50, 10, 90, 30, 25}; Arrays.sort(crr); // 5. 打印crr数组中的所有元素值 for (int i=0;i<crr.length;i++) { System.out.println("打印吃crr数组中的元素值 ["+i+"]= "+crr[i]); } } }
结果:
打印brr数组中的元素值 [0]= 20 打印brr数组中的元素值 [1]= 30 打印brr数组中的元素值 [2]= 40 打印brr数组中的元素值 [3]= 0 打印brr数组中的元素值 [4]= 0 打印brr数组中的元素值 [5]= 0 打印吃crr数组中的元素值 [0]= 10 打印吃crr数组中的元素值 [1]= 20 打印吃crr数组中的元素值 [2]= 25 打印吃crr数组中的元素值 [3]= 30 打印吃crr数组中的元素值 [4]= 50 打印吃crr数组中的元素值 [5]= 90
编程实现 数组元素的删除 和 移动
public class ArrDeleteTest { public static void main(String[] args) { // 1. 声明一个数组 int[] arr = {10, 20, 30, 40, 50}; // 2.打印数组 for(int i=0; i<arr.length; i++) { System.out.println("arr["+i+"] = "+arr[i]); } System.out.println(); // 3.删除数组元素10,将后面的元素 向前 移动一位进行覆盖,最后一个元素 置为0 for(int i = 1;i<arr.length;i++) { arr[i-1] = arr[i]; } arr[arr.length-1] = 0; System.out.println(); // 4.向数组中下标为0的位置插入60,最后打印出所有元素 // 首先将数组中已经存在的元素向后移动,腾出下标为0的位置 for(int i=arr.length-1; i>0; i--) { arr[i] = arr[i-1]; } arr[0] = 60; // 5.打印数组中的所有元素 for(int i=0; i<arr.length; i++) { System.out.println("arr["+i+"] = "+arr[i]); } } }
结果:
arr[0] = 10 arr[1] = 20 arr[2] = 30 arr[3] = 40 arr[4] = 50 arr[0] = 60 arr[1] = 20 arr[2] = 30 arr[3] = 40 arr[4] = 50