java - Map 对象保存 Point(int x, int y) 和颜色

标签 java object

我正在尝试创建一个“ map ”对象。

这个“Map”对象应该包含“Point”(int x, int y)对象 - 并且每个点都有一个由字符(字母)表示的颜色。

这是 picture for example

enter image description here

我不能向“Point”添加字段。我不能使用通用对象。

我正在考虑如何应用这个“Map”对象: 我想也许它可以有字段:

    private Point[] MapPoints;
    private char[] PointsColors;

“Point[] MapPoints”数组将保存点。 “char[] PointsColors”将分别保存颜色。

我没有仔细考虑,但我觉得这有点笨拙,并且对我以后的代码可能会很困难。

我处于面向对象编程的非常基础的水平 - 因此,当您提供解决方案时请考虑它 - 它应该是基础的并且仅限于我们在类里面学到的内容。

最佳答案

如果你设计一个像char[][]pointColors这样的二维数组,你将不再需要Point类......然后你可以浏览/迭代rows 和 cols 在 map 中查找/设置颜色,这种方法有一些积极的作用

  1. 您不需要为此创建类(class)点。

  2. 只需知道颜色所在的坐标即可直接设置/获取颜色...

示例:

char[][] pointsColors = new char[2][2];
// set color at 0,0 to red
pointsColors[0][0] = 'r';
// set color at 1,1 to green
pointsColors[1][1] = 'g';
// get color at 0,1
char foo = pointsColors[0][1];

关于java - Map 对象保存 Point(int x, int y) 和颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43819849/

相关文章:

java - 如何在 Mac 应用程序菜单中隐藏 "Preferences"项

java - 在测试期间调用预定方法

javascript - 使用每个对象名称的数组创建对象数组

html - iframe 内容与 iframe 的边界重叠

java - 可以告诉 MapStruct 不执行自动映射吗?

java - Swing ComponentListener.componentShown 未触发

java - 字符串和indexOf的问题

java - 如何使用枚举的 getter?

java - JNI : How to handle the creation/removal of wrapped C++ object

javascript - 性能——我应该同时使用数组和对象来处理巨大的列表吗?