不确定代码的逻辑

时间:2015-04-22 22:45:09

标签: java

我无法手动测试我方法的代码,因为我还没有完成其他相关代码,但我觉得方法public boolean isFilledAt(int row, int col)的逻辑是错误的。如果形状在给定的行/列位置具有填充块(任何true),则该方法返回char,如果块为空,则返回false(点'.') 。如果该位置超出界限,请提出FitItException并提供信息性消息。请问smb请仔细阅读并告诉我该方法的代码是否有任何问题?谢谢!

public class CreateShape {

    private int height;
    private int width;
    private char dc;
    private Rotation initialPos;
    private char[][] shape = new char[height][width]; 
public boolean isFilledAt(int row, int col) 
    {
        if(row < 0 || row >= height || col < 0 || col >= width)
            throw new FitItException("Oops! Out of bounds!");
        else
        {
            for (int i = 0; i < shape.length; i++)
                for (int j = 0; j < shape[i].length; j++) {
                    if (shape[row][col] == dc)
                        return true;
                }
        }
        return false;
    }

1 个答案:

答案 0 :(得分:1)

public boolean isFilledAt(int row, int col) {
    if(row < 0 || row >= height || col < 0 || col >= width)
        throw new FitItException("Oops! Out of bounds!");
    else 
        return (shape[row][col] == dc);
}

与您当前的代码相同。我不确定您要通过数组,但您甚至没有使用ij变量。