2017-08-03 14 views
0

由於OptaPlanner 7.0.0.Beta7 ConstraintMatchTotal類不再具有分數級別或其總權重值。爲每個ConstraintMatchTotal對象獲取這些值的好方法是什麼?ConstraintMatchTotal如何獲得體重和分數水平?

我知道ConstraintMatchTotal現在返回一個Score對象,但獲得我需要的信息的唯一方法似乎是遍歷toLevelNumbers數組,直到找到第一個非零值。這看起來效率低下且麻煩。有沒有更好的辦法?

感謝

回答

0

看看score.toShortString()

爲什麼你需要重量?

  • 如果你需要做的的計算,只需用Score對象,也有add(),計算subtract()

  • 如果你需要它來顯示給用戶,使用toShortString(),它會將0hard/0medium/-5soft轉換爲-5soft

See also the code example in the upgrade recipe to 7.

+0

我看到了升級配方的改變,但我仍然需要支持我現有的API。 這意味着我仍然需要得到分數水平值(我使用的是一個BendableScore)和權重作爲一個整數。這些可能被帶回的機會有多大? – code4dc

+0

影響2個分數級別(例如中等和軟分數)的分數規則現在只有一個ConstraintMatch(這是起訴熱圖需要的更改)。你會如何設想這些API方法看起來像?隨意創建一個吉拉與一些稻草人的例子如何使這些方法相應地回來。 –