我有更多关于风格而非实施的问题。我正在开发扑克应用程序。它有一个存储所有必需数据的类,如五张卡。还有第二个结构,它模拟了FigureAnalyzer - 一段代码来确定,当手包含flush,两对或full时。总的来说,一切都很好。但它比我的前女友更难看。
这是一个确定手部组合的样本:
@Override
public int getFigureStrength(IHand hand) {
/*
* analyze all possible pairs, triples, etc.
*/
MultipleCardAnalyzer.anayzeMultipleCards(hand, figureList);
hand.setFigureAnalyzer(this);
if (isPoker()) {
if (isRoyalPoker())
return 10;
return 9;
}
else if (isFourOfAKind())
return 8;
else if (isFull())
return 7;
else if (isFlush())
return 6;
else if (isStraight())
return 5;
else if (areThreeOfAKind())
return 4;
else if (areTwoPairs())
return 3;
else if (isPair())
return 2;
else
return 1;
}
数字在比较双手时非常有用。但是......它太可怕了。任何人都可以指出我或者只是建议,我怎样才能让它变得更漂亮?
答案 0 :(得分:2)
定义具有这些值的有意义名称的常量; enum
可能在这里很有用。