0

我有一个确定冲洗的方法,只是想要一些意见。它查看扑克手数组,比较花色,并计算每次匹配一张牌,如果是 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);
    }
4

1 回答 1

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

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

  return true;
}

你不需要计算任何东西,false如果有什么不匹配就返回。

于 2012-05-18T02:44:04.993 回答