如何在特定次数的随机位置中创建带有#1的2D数组

我想用JAVA创建一个8x8数组,在其中我想在随机生成的位置上放置1到8次。数组的所有其他位置都将为0。我正在使用此代码,但显然在特定的次数中,数组1并未填充。

public static void main(String[] args) {

    int [][] arr = new int [8][8];

    for(int i = 0; i < 8; i++){
        for(int j = 0; j < 8; j++){
            arr[i][j] =  (int) (Math.random()*2);
        }
    }

    for(int k = 0; k < 8; k++){
        for(int l = 0; l < 8; l++){
            System.out.print(arr[k][l] + " ");
        }
        System.out.println();
    }
}

}