2016-03-10 26 views
0

我有一個問題,更多的風格,而不是執行。我正在從事撲克應用。它有一個存儲所有必需數據的類,例如五張卡片。還有第二種結構,它模擬FigureAnalyzer - 代碼段,以確定手是否包含沖水,兩對或全部。一般來說,一切工作正常。但是,我的前女友更醜陋。撲克手分析和乾淨的代碼

這是一個示例,其中確定手的組合:當它涉及到比較兩個手

@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

,如果你不明白這裏的反饋,然後嘗試http://codereview.stackexchange.com - 你的問題適合他們的網站完全 – Baronz

+0

[枚舉?](https://www.google.ru/search?q =枚舉+ java) – nekavally

+0

好吧,枚舉使一件事,但所有這些如果/ elses ...任何想法如何使它更易讀? – Treck

回答

2

定義常量w代表這些價值/有意義的名字; enum可能在這裏很有用。