插入数据:
import java.util.Arrays;
import java.util.Scanner;
public class InsertDate2 {
public static void main(String[] args){
int[] arr={1,3,7,9};
int[] newarr=new int[arr.length+1];
Scanner sc=new Scanner(System.in);
System.out.println("请输入插入的位置:");
int index=sc.nextInt();
System.out.println("请输入插入的数:");
int num=sc.nextInt();
InsertDate(arr,newarr,index,num);
System.out.println(Arrays.toString(newarr));
}
public static void InsertDate(int[] arr,int[] newarr,int index,int num){
System.arraycopy(arr,0,newarr,0,index);
newarr[index]=num;
System.arraycopy(arr,index,newarr,index+1,arr.length-index);
}
}
二分查找:
import java.util.Scanner;
public class Efcz {
public static void main(String[] args){
int[] arr={1,2,4,7,11,19};
Scanner sc=new Scanner(System.in);
System.out.println("请输入要查找的数:");
int num=sc.nextInt();
System.out.println("要找的数下标是:"+Ef(arr,num,0,arr.length-1));
}
public static int Ef(int[] arr,int num,int start,int end){
int mid=(start+end)/2;
if(arr[mid]==num){
return mid;
}else if(arr[mid]>num){
return Ef(arr,num,0,mid-1);
}else{
return Ef(arr,num,mid+1,arr.length-1);
}
}
}
随机排序:
import java.util.Random;
import java.util.Scanner;
public class Sjpx {
public static void main(String[] args){
int[] arr=new int[5];
Scanner sc=new Scanner(System.in);
for(int i=0;i<arr.length;i++){
System.out.println("请输入第"+(i+1)+"个编号");
arr[i]=sc.nextInt();
}
Random rand=new Random();
for(int i=0;i<arr.length;i++){
int index=rand.nextInt(arr.length);
int tmp=arr[index];
arr[index]=arr[i];
arr[i]=tmp;
}
for(int a:arr){
System.out.print(a+"\t");
}
}
}
多维数组:
二维数组:
定义二维数组的语法规则如下:
数据类型[ ] [ ] 数组名;
或者
数据类型 数组名[ ] [ ];
语法解析:
[ ] [ ]
表示二维数组,前面的
[ ]
表示第一维,后面的
[ ]
表示第二维。
[ ] [ ]
放在数组名的前面或后面都是正确的。
二维数组初始化:
int
[ ] [ ]
arr
=
new
int
[
3
][
4
];
//
动态初始化
int
[ ] [ ]
arr1
=
new
int
[ ] [ ]{
//
静态初始化
{1,2,3),
{2,3},
{3,4,5,6}
};
二维数组的迭代:
for (int i = 0; i < arr1.length; i++) {
System.out.println(arr1[i]);
for (int i1 = 0; i1 < arr1[i].length; i1++) {
System.out.println(arr1[i][i1]);
}
}
for (int[] t : arr1) {
for (int a : t) {
System.out.println(a);
}
}