所以在我的课堂上,我们正在用 Java 编写一个简单的俄罗斯方块,比如小程序。块从屏幕顶部落入 6 个不同的列,每个不同的列是一个堆栈。为了得分,你必须匹配 3 个或更多相同颜色的块,它们在堆栈的最顶部水平相邻。所以只有栈顶可以匹配。如果匹配 3 个或更多块,则必须删除它们(又名 pop()'d off)。您可以将块与相邻块切换到右侧或左侧(从而生成更大的组合)。然而,这是我的问题。我的问题涉及检查 3 个或更多块(彼此相邻)是否颜色匹配。我必须记住的是列数可能会增加。我并不是说程序运行时它会增加,它' s 只是我必须练习适当的技术,并确保我有可能解决这个问题。话虽如此,有一个代表列数的成员变量,恰当地命名为 numCols。
因此,如果有人可以在正确的方向上推动我解决这个问题,请。同样,问题是:能够编写一个方法 removeCombos() 来水平检查一行中的 3 个或更多相同颜色的块(在堆栈顶部)并删除它们。我想自己写代码,所以这里没有提供任何代码。除非您需要查看某些内容,否则我可以提供一些内容,但它与基本堆栈类及其泛型方法 pop()、peek()、contains()、isEmpty() 以及迭代器类一起使用堆栈类。
如果我有任何不清楚的地方,我会提前道歉,并请我在需要的地方澄清一下。非常感谢。