我的任務是讓「的Yahtzee」遊戲Java程序。 除了Small Straight方法,我幾乎完成了。 (不能弄明白。)「的Yahtzee」遊戲Java編程
小直是當骰子有4直數量。 (出12334,23345,34556,和等)
這裏是我的isSmallStraight方法的代碼(此代碼沒有完成!):
public static boolean isSmallStraight(List<Die> dice) {
boolean result = false;
List<Die> copy = new ArrayList<Die>(dice);
Collections.sort(copy);
List<Die> testCase1 = new ArrayList<Die>();
testCase1.add(new Die(1));
testCase1.add(new Die(2));
testCase1.add(new Die(3));
if(copy.containsAll(testCase1)) {
result = true;
System.out.println(result);
}
return result;
}
我想在這裏做的是我通過來自主要方法(列表骰子)的5個隨機數的骰子並將它們放入「複製」對象中。 由於我需要使用java.util.List.containsAll()方法(需求),我想我需要使另一個對象「testCase1」與「複製」進行比較。 (如果你有其他方法來解決這個問題,至少你可以使用java.util.containsAll()方法)
但是,我現在不知道的是如果我使用dice.add(新的Die(3)),它意味着程序從1,2和3中選取隨機數。(不是數字3) - 另外,它給我編譯時的錯誤。
所以,我想知道我怎麼可以存儲骰子具體數字1,2,3和4的「testCase1」,2,3,4,和5「testCase2」,和3,4,5,和6爲「testCase3」,並使用copy.containsAll(testCase1)成爲true。
請儘快幫我越好!
PS。 Die class已經由我的教授編程。 (所以,不能改變任何Die類)。
把_ASAP!_上'SO'發佈就像是downvotes – Reimeus