注册 登录
编程论坛 JAVA论坛

这是什么错误

xu2738461746 发布于 2015-05-20 09:13, 564 次点击
程序代码:
public void drawDiamond(int num){
        char[][] b = new char[num][num];
        if(oddNumber(num)){
            for(int i = 0;i <= num-1;i++){
                for(int j = 0;j <= num-1;j++){
                    if((i + j == num/2 )||(i + j == num + 1)||(i - j == num/2)||(j - i == num/2) ){
                        b[i][j] = '*';
                    }else{
                        b[i][j] = ' ';
                    }
                }
            }
        }else{
            for(int i = 0;i <= num-1;i++){
                for(int j = 0;j <= num-2;j++){
                    if((i + j == num/2-1)||(j - i == num/2-1)||(i - j == num/2)||(i + j == num-2+num/2)){
                        b[i][j] = '*';
                    }else{
                        b[i][j] = ' ';
                    }
                }
        }
        for(int i = 0;i <= num-1;i++){
            for(int j = 0;j <= num-1; j++){
                System.out.print(b[i][j]);
            }
            System.out.println();
        }在这里编译器报错,(语法错误,将“}”插入到完整 Block 中)
    }
5 回复
#2
xu27384617462015-05-20 09:14
附加那个oddNumber()只是用来判断是否为奇数的
#3
xu27384617462015-05-20 09:29
汗,我自己找到错误了,不知道什么时候删了一个}
#4
zq10627879412015-05-24 12:44
应该是}没有缺失
#5
逆水寒刘2015-05-26 16:47
第二个模块少了一个“}”
#6
日知己所无2015-05-26 19:02
括号没有匹配好,代码如果很长的话,有时想找出问题会花费不少时间

以后再遇到类似问题,可以考虑用Eclipse的Ctrl+Shift+F快捷键来格式化一下代码,格式化之后就比较容易看出来哪里缺括号了
1