数组复制、反转、查找(线性查找、二分法查找)
使用简单数组
(1)创建一个名为ArrayTest的类,在main()方法中声明array1和array2两个变量,
他们是int[]类型的数组。
(2)使用大括号{},把array1初始化为8个素数:2,3,5,7,11,13,17,19。
(3)显示array1的内容。
(4)赋值array2变量等于array1,修改array2中的偶索引元素,使其等于索引值
(如array[0]=0,array[2]=2)。打印出array1。
思考:array1和array2是什么关系?
拓展:修改题目,实现array2对array1数组的复制
package exe;
import javax.print.attribute.standard.PrinterLocation;
public class ArrayExer2 {
public static void main(String[] args){
int[] array1,array2;
array1 = new int[]{2,3,7,11,13,17,19};
for(int i = 0;i < array1.length;i++){
System.out.print(array1[i]);
array2 = array1;
for(int j = 0;j < array2.length;j++){
if(j % 2 == 0){
array2[j] = j;
System.out.print(array2[j]);
}
}
}
}
}
数组的赋值
array2 = new int[array1.length];
for(int i1 = 0;i1 < array1.length;i1++){
array2[i1] = array1[i1];
先定义一个新的数组“new”
定义长度与要复制的数组长度一致
for循环遍历
数组数值挨个赋值
反转操作
package day0421i;
public class ArrayTest2 {
public static void main(String[] args) {
String[] arr = new String[]{"JJ","DD","MM","BB","GG","AA"};
//数组的复制(区别于数组变量的赋值:arr1=arr)
String[] arr1 = new String[arr.length];
for(int i = 0;i < arr1.length;i++){
arr1[i] = arr[i];
}
//数组的反转
//方法一:定义一个
for(int i = 0;i < arr.length / 2;i++){
String Temp = arr[i];
arr[i] = arr[arr.length-i-1];
arr[arr.length-i-1] = Temp;
}
//方法二:
for(int i = 0,j = arr.length - 1;i < j;i++,j--){
String Temp = arr[i];
arr[i] = arr[j];
arr[j] = Temp;
}
//遍历
for(int i = 0;i < arr.length;i++){
System.out.print(arr[i] + "\t");
}
}
}