码迷,mamicode.com
首页 > 其他好文 > 详细

关于2048小游戏中随机生成2与4个数的问题

时间:2016-11-30 09:32:44      阅读:1080      评论:0      收藏:0      [点我收藏+]

标签:int   image   turn   random   i++   分享   numa   blog   坐标   

public class InitNumer {
    Random random = new Random();

    public InitNumer() {
        super();
    }

    /**
     *  随机生成一个二维数组,并指定生成的2与4的个数
     * @param rowAndCol 二维数组的宽与高
     * @param numberOf2 数字2的个数
     * @param numberOf4 数字4的个数
     */
    public int[][] randomGetNumber(int rowAndCol, int numberOf2, int numberOf4) {
        int[][] numArray = new int[rowAndCol][rowAndCol];
        for(int i=0;i<numberOf2;i++){
            int xi = random.nextInt(rowAndCol);
            int yi = random.nextInt(rowAndCol);
            if(numArray[xi][yi]==0){
                numArray[xi][yi]=2;
            }
        }
        for(int j=0;j<numberOf4;j++){
            int xj = random.nextInt(rowAndCol);
            int yj = random.nextInt(rowAndCol);
            if(numArray[xj][yj]==0){
                numArray[xj][yj]=4;
            }
        }
        return  numArray;
    }
}

随机生成的二维数组会出现一个问题,就是当(xi,yi)与(xj,yj)坐标相同的时候就会少生成一个4。就是说随机生成的2的个数可以确定,但是4的个数不能确定。例如:

技术分享

待解决。

关于2048小游戏中随机生成2与4个数的问题

标签:int   image   turn   random   i++   分享   numa   blog   坐标   

原文地址:http://www.cnblogs.com/zhoubohao/p/6116299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!