扑克手评估员

时间:2012-05-18 02:40:16

标签: java

我有一个确定同花顺的方法,只想要一些意见。它通过一个扑克手阵列查看,比较套装,并在每次匹配卡时计数,如果是4,则返回true。有没有更有效的方法来做到这一点?

public boolean isFlush(PlayingCard[] hand)
    {
        int suitCounter = 0;

        for(int i = 0; i < 1 ; i++)
        {
            for(int j = 1 ; j < hand.length ; j++ )
            {
                if(hand[i].getSuit() == hand[j].getSuit())
                    suitCounter++;
            }
        }

        return (suitCounter == 4);
    }

1 个答案:

答案 0 :(得分:2)

public boolean isFlush(PlayingCard[] hand) {
  Suit s = hand[0].getSuit();

  for(PlayingCard c : hand)
    if(c.getSuit() != s)
      return false;

  return true;
}

您无需计算任何内容,只要不匹配就返回false