如果我有一个名为cell的类,如何在坐标平面中创建单元格对象?(即单元格 1,1 在 x = 1 和 y = 1 处)。我需要能够访问飞机中的某些单元格(即在 2、4 处调用单元格并从中获取信息)。我在考虑能够以像cell[x,y]这样的方式调用它。
与周围的单元格相比,单元格具有不同的状态,因此我需要一种方法来调用坐标平面中的特定单元格。
您可以创建具有属性 x 和 y 的类单元格
public class Cell {
private int x;
private int y;
public Cell(int x, int y) {
this.x = x;
this.y = y;
}
// Getter and setter as needed
}
要知道特定点是否存在Cell
,您可以使用不同的方法:
- 使用
Cell
的二维数组 - 使用
Map<String, Cell>
,其中字符串是格式为x + "$" + y
- 创建
Coordinate
类并使用Map<Coordinate, Cell>
在二维数组和 Map 之间进行选择取决于矩阵的稀疏程度。如果您的 x 和 y 范围非常大,并且很少有单元格使用 Map,相反,如果您的坐标范围相对较小,请使用二维数组。
请注意,创建 Coordinate
类时,您需要记住重写 .equals()
和 .hashCode()
方法。