讲解一下这段代码,越详细越好

用于产生数字和判断选中的两个数字是否相同
package com.feonix;

import java.util.Random;

public class MapTool {

public static int[][] createMap() {
    int[][] map = new int[10][10];
    Random rand = new Random();
    for (int i = 0; i < map.length; i++) {
        for (int j = 0; j < map[i].length; j++) {
            map[i][j] = rand.nextInt(9) + 1;
        }
    }
    return map;
}

public static int[][] removed(int[][] map, int pi, int pj, int ci, int cj) {
    if (map[pi][pj] == map[ci][cj] && (pj != cj || pi != ci)) {
        System.out.println("消除:map[" + ci + "][" + cj + "],map[" + pi + "][" + pj + "]");
        map[pi][pj] = 0;
        map[ci][cj] = 0;
    }
    return map;
}

}

createMap方法:随机生成100个1~9之间的整形数据,放在map二维数组中。

1.创建二维数组 循环遍历生成整形随机数 放在map中
2.传入map二维数组 参数有4个索引pi,pj一对ci,cj一队
如果在二维数组中索引时pi,pj这个值等于索引是ci,cj所在值并且他们一维对一维二维对二维有一个不等 这个判断就成立可以进入
然后把他们所在索引的值给变成0

我看了一下