Java PokerHand 方法

标签 java junit poker

我正在编写一个扑克牌代码,用于查找手中的各种扑克牌。我在实现每个方法后编写测试。

我编写了 isFlush() 代码来测试这手牌是否是同花。

public boolean isFlush()
{

for (int i = 0; i < 4; i++)
{
    if (cards.get(i).getSuit() == cards.get(i + 1).getSuit())
    {
        return true;
}
    }
    return false;
}

这是相应的测试,构建成功但测试实际上失败了。它说预期是假的,但这是真的。我在代码中做错了什么,没有正确测试刷新?

@Test public void testIsFlush()
{

 pokerHand.add(aceClubs);
 pokerHand.add(kingSpades);
 pokerHand.add(threeClubs);
 pokerHand.add(fourClubs);
 pokerHand.add(fiveClubs);

 assertEquals(false, pokerHand.isFlush());
 }  

最佳答案

public boolean isFlush()
{
    for (int i = 0; i < 4; i++)
    {
        if( !cards.get(i).getSuit().equals(cards.get(i + 1).getSuit()) )
        {
            return false;
        }
    }
    return true;
}

最好检查两张连续的牌花色是否不相同。

关于Java PokerHand 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35208555/

相关文章:

java - 使用某些条件检索最后 N 行的 Eclipselink 表达式

grails - 如何模拟 Controller 内部的命令对象

python - 将一个列表中的项目移动到另一个列表中的纸牌游戏 Python

c++ - 将整数值转换为以枚举为基础的字符串

c - 为什么我的变量没有增加?

java - 如何取消订阅 TornadoFX 中的 Activity ?

java - android和javafx轻量级兼容事件框架

java - 带有我想在应用程序启动时写出的文件资源的 Eclipse 项目

java - 如何并行运行万无一失的测试,同时强制某些测试按顺序运行?

exception - 如何在 Scala 中使用 JUnit ExpectedException?