/ ** * 2D网格的接口,在每个点存储值 *
IIntGrid2Ds可以视为代表右上象限 *代表笛卡尔坐标平面或表示屏幕坐标。一 *平面的一个角位于(0,0),另一个角位于某个点 *(mx,我的)。 0≤x≤mx和0≤y≤my的任何点(x,y) *必须是网格上的有效点。 *
可以在每个网格位置存储类型T的值。 T是泛型类型 *参数,将在构造IIntGrid2D时设置。 * / 公共接口IIntGrid2D {
/**
* Sets the value at a point on the grid, replacing the previous value if any.
* @param p The coordinate to set the value of
* @param v The value to set at the coordinate
* @throws OffGridException if p is outside the grid
*/
public void setPoint(IIntPoint2D p, T v);
这就是我所拥有的:
public class IntGrid2D<T> implements IIntGrid2D<T> {
private T t;
private T [][] board;
int width;
int height;
char c;
@SuppressWarnings("unchecked")
public IntGrid2D(int width, int height, char c) {
this.width = width;
this.height = height;
this.c = c;
int x = 0;
int y = 0;
board = (T[][])new Object[x][y];
// set the initial value for all the squares
for(int i=0; i<x; i++) {
for(int j=0; j<y; j++) {
board[x][y] = null;
}}}
不确定如何执行setPoint方法?