1.二维数组查看具体某行的值
public static void main(String[] args) { double[][] class_score={{100,99,99},{100,98,97},{100,100,99.5},{99.5,99,98.5}}; Scanner scan=new Scanner(System.in); System.out.println("当前数组只有"+class_score.length+"行,您想查看第几行的元素?请输入:"); int number=scan.nextInt(); for(int j=0;j<class_score[number-1].length;j++) { System.out.println(class_score[number-1][j]); }
}
2.二维数组某行或某列倍数
public static void main (String args []){ int [][] n= {{1,3,2},{1,8,9},{1,10,5},{5,9,5}}; for( int i=0;i<3;i++){ //第二行*2操作 i<3 每行有三个元素 n[1][i]=n[1][i]*2; //第三列*2操作 i<4 每列有四个元素 //n[i][2] = n[i][2]*2; } for (int [] is:n){ for(int i:is){ System.out.print(i+" "); } System.out.println(); } }
3.二维数组某行或某列求和
public static void main(String[] args) {
int sum = 0; int f[][] = {{1,2,3},{4,5,6},{7,8,9}}; for(int m=1;m<f.length-1;m++){//控制m 和 length的长度 第二行之和 for(int n=0;n<f[m].length;n++){//) System.out.print(f[m][n]+" "); sum+=f[m][n]; } System.out.println(); } System.out.println("sum=" + sum); }
4.二维数组整体转置
public static void main (String args []){ //初始化数组 int [][] n ={ { 1, 3, 5 }, { -3, 6, 0 }, { 13, -5, 7 }, { -2, 19, 25 } }; int [][] m=new int [3][4]; System.out.println("转置前"); int k=0; for(int[] x:n){ for(int i=0;i<x.length;i++){ System.out.print(x[i]+" ");//注意不换行 m[i][k]=n[k][i]; } k++; System.out.println(""); } System.out.println("反转后"); //行列互换 核心代码 for(int [] x:m){ for(int i=0;i<x.length;i++){ System.out.print(x[i]+" "); } k++; System.out.println(""); } }
5.数组的冒泡排序
public static void main (String args []){ int[] a = { 14, 63, 36, 5, 27, 18 }; // 循环遍历输出 for (int i = 0; i < a.length; i++) { System.out.print(a[i] + " "); } System.out.println(); // 排序 for (int i = 0; i < a.length - 1; i++) { for (int j = 0; j < a.length - 1 - i; j++) { if (a[j] < a[j + 1]) { int t = a[j]; a[j] = a[j + 1]; a[j + 1] = t; } } } for (int i : a) { System.out.print(i + " "); }
}
6.一维数组
public static void main (String args[]){ //1. int []a=new int[]{8,6,4,2,5}; getMin(a); System.out.println("****************************************");
//2. int []b=new int[]{9,1,2,11,19,3}; getMax(b); System.out.println("****************************************");
//3. int []c=new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; getSendMax(c); System.out.println("****************************************");
//4. double[] num=new double[]{99,97,96,95,94,92,91,90,88,100}; Sort(num); System.out.println("****************************************");
//5. int[] num2= new int[]{99,97,96,95,94,92,91,90,88,100}; odd(num2); System.out.println("****************************************");
//6. int[] array=new int[]{1,2,3,4,5,6,7,8}; BackOver(array); System.out.println("****************************************"); } //1.定义一个函数,获取某个数组中的最小值 public static void getMin(int [] num){ int min=num[0]; for (int i=0;i<num.length;i++){ min=(num[i]<min?num[i]:min); } System.out.println("最小值"+min); } //2.定义一个数组,数组成员10个,找出数组中最大数连同下标一起输出 public static void getMax(int [] num){ int max = num[0]; int index=0; for (int i = 0; i < num.length;i++){ if(max<num[i]){ max=num[i]; index=i; } } System.out.println("最大值:"+max+"索引值:"+index); } //3.给定一个整型数组,数组成员10个,求该数组中第二大的数的下标 public static void getSendMax(int []num){ int[] arr1 = Arrays.copyOf(num, num.length); Arrays.sort(num); int[] num1 = Arrays.copyOfRange(num, 0, 9);
for (int i = 0; i < arr1.length-1; i++) { if (arr1[i] == num1[num1.length-1]) { System.out.println("第二大的数的下标为"+i); } } } //4.定义数组,存放5个学生的成绩【成绩值自己设定】,将成绩从大到小排序,获得成绩之和,平均成绩,最小成绩,最大成绩。 public static void Sort(double[] num) { Arrays.sort(num); double sum=0.0; for (int e=0;e<num.length;e++) { sum=sum+num[e];
} System.out.println("max="+num[num.length-1]); System.out.println("min="+num[0]); System.out.println("average="+sum/num.length); System.out.println("sum="+sum); } //5.定义一个长度为10的int数组,统计数组中最大最小值,奇数和偶数的个数 public static void odd(int[] num) {
Arrays.sort(num); for(int i = 0; i < num.length; i ++) { System.out.println(num[i] + " "); } int evensum=0; int oddsun=0; for(int i=0;i<num.length;i++){ if(num[i]%2==0){ evensum++; }else{ oddsun++; } } System.out.println("最小值:"+num[0]+"最大值:"+num[num.length-1]); System.out.println("奇数的个数="+oddsun+"偶数的个数="+evensum); }
//6.提取一个方法,将指定数组中的数组元素进行反转 public static void BackOver(int[] array){ for(int i=array.length-1;i>=0;i--){ System.out.println(array[i]+" "); } }