Java连连看小游戏设计.请教以下代码参数表示什么和它们的作用(这是重列方法的部分.能解释一下各参数吗)

public void reload(){
int save[] = new int[30];
int n=0,cols,rows;
int grid[][]= new int[8][7];
for(int i=0;i<=6;i++) {
for(int j=0;j<=5;j++) {
if(this.grid[i][j]!=0) {
save[n]=this.grid[i][j]; n++;
}
}
}请务必详细

public void reload(){ 声明一个公有的方法(这里的public就是公有的意思)方法没有返回值(这里的void就是返回值为空的意思)方法的名字是reload
int save[] = new int[30]; 声明一个数组名字就save最多能放30个元素
int n=0,cols,rows; 声明一个n值为0 声明一个cols没有赋值 声明一个rows没有赋值
int grid[][]= new int[8][7]; 声明一个2维数组叫grid 横向放8个元素 纵向放7个元素 一共可以放7乘8 56个元素
for(int i=0;i<=6;i++) {
for(int j=0;j<=5;j++) {
if(this.grid[i][j]!=0) {
save[n]=this.grid[i][j]; n++;
}
}
}

这两个for循环里的意思是 判断第i行第j列的值如果不等于零 那么就将这个值赋给save[n] 并将n的值+1 for(int i=0;i<=6;i++)这句话定义了有7行 for(int j=0;j<=5;j++) 这句话定义了有6列

个人感觉这段程序有问题 6乘以7等于42 但是save里面最多放30个元素
这个可以运行吗...追问

是可以运行的 我是自己在弄java所以很多地方不明白 运行的图片是这样 问题是我改了这个程序的所有二维数组 再编译运行 显示的和之前的一样...比如int grid[][]= new int[8][7]  我改成了int grid[][]= new int[11][11].再运行和之前没区别

追答

能给我看看完整的程序吗

追问

不好意思刚才弄错了 是这样 我编译运行的程序1放在文件夹z 然后我把修改过的程序2也放在文件夹z 这样的话编译2会不会产生什么影响?你有qq吗我加你说吧?

追答

三零二八二零零二三七

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-10-13
public void reload(){
int save[] = new int[30]; //一个页面需要展示的图像的个数
int n=0,cols,rows;//定义行数和列数
int grid[][]= new int[8][7]; //定义总的图像个数
for(int i=0;i<=6;i++) { //循环行数
for(int j=0;j<=5;j++) { //循环列数
if(this.grid[i][j]!=0) {
save[n]=this.grid[i][j];//从总的图像个数中循环取图像,取出30个放在第一个变量中
n++; //每次取完都要累加一次
}
}
}
}
相似回答