zoukankan      html  css  js  c++  java
  • 2017/12/31Java基础学习——二维数组排序の数组工具类Arrays的方法综合运用

    代码如下:

     1 import java.util.Arrays;
     2 public class HelloWorld {
     3     public static void main(String[] args) {
     4 //        首先定义一个5X8的二维数组,然后使用随机数填充满。
     5 //        借助Arrays的方法对二维数组进行排序。
     6         
     7         //Method 1
     8 //        int[][] a = new int[5][8];
     9 //        int[] b = new int[a.length * a[0].length];
    10 //        int k = 0;
    11 //        System.out.println("打印排序前的二维数组 = ");
    12 //        for (int i = 0; i < a.length; i++) {
    13 //            for (int j = 0; j < a[i].length; j++) {
    14 //                a[i][j] = (int)(Math.random() * 100);
    15 //                b[k++] = a[i][j];//将二维数组值赋给一维数组b
    16 //            }
    17 //            System.out.println(Arrays.toString(a[i]));
    18 //        }
    19 //        
    20 //        System.out.println("排完顺序后的二维数组 = ");
    21 //        Arrays.sort(b);//排序一维数组b
    22 //        k = 0;
    23 //        for (int i = 0; i < a.length; i++) {
    24 //            for (int j = 0; j < a[i].length; j++) {
    25 //                a[i][j] = b[k++];//将数组b值传给数组a
    26 //            }
    27 //            System.out.println(Arrays.toString(a[i]));
    28 //        }
    29 //        
    30         //Method 2
    31         int[][] a = new int[5][8];
    32         
    33         for (int i = 0; i < a.length; i++) {//给数组a赋值
    34             for (int j = 0; j < a[i].length; j++) {
    35                 a[i][j] = (int)(Math.random() * 100);
    36             }
    37         }
    38         
    39         System.out.println("打印排序前的二维数组 = ");
    40         for (int[] each : a) {//输出数组a
    41             System.out.println(Arrays.toString(each));
    42         }//规律总结:『:』前的为一维数组变量,引号后的为二维数组名,最后输出的为一维数组名。
    43         
    44         int[] b = new int[a.length * a[0].length];
    45         for (int i = 0; i < a.length; i++) {//将二维数组a复制给一维数组b
    46             System.arraycopy(a[i], 0, b, a[i].length * i, a[i].length);//这里的a[i]等价于一维数组名
    47         }
    48         Arrays.sort(b);//对一维数组b进行排序
    49         
    50         for (int i = 0; i < a.length; i++) {//将一维数组b复制给二维数组a
    51             System.arraycopy(b, a[i].length * i, a[i], 0, a[i].length);
    52         }
    53         
    54         System.out.println("打印排序后的二维数组 = ");
    55         for (int[] each : a) {//输出数组a
    56             System.out.println(Arrays.toString(each));
    57         }
    58 
    59     }
    60 }
  • 相关阅读:
    cmd的操作命令导出导入.dmp文件
    转:String数组初始化
    Oracle计算时间差
    WEB-INF目录与META-INF目录的作用
    【神乎其神】这些EXCEL技巧,太神奇了,赶紧收藏!
    报错: The type ByteInputStream is not accessible due to restriction on required library
    ModelAndView对象作用
    shiro使用
    包装类型的比较,如:Integer,Long,Double
    转一个distinct用法,很有帮助
  • 原文地址:https://www.cnblogs.com/lijiehua/p/8158356.html
Copyright © 2011-2022 走看看