基本黑杰克程序(黑杰克程序本身工作正常,我只需要帮助修改窗格部分),我最后删除了大部分代码以消除混乱。
如何在用户选择其他选项后从对象数组中删除选项(请参阅代码以便更好地理解)。
我将整个JOptionsPane放在do while循环中,以防用户决定单击关闭按钮而不选择选项。因此,我还需要帮助阻止用户关闭窗格而不选择按钮。
我尝试使用LinkedList将按钮添加到JOptionsPane但它给出了一个错误,说它需要一个数组。我使用了docs.oracle.com tutorial中的信息,它只涵盖了使用Objects而不是字符串。
有人可以为我提供我目前正在使用的替代方案,因为它根本无法满足我的需求。
Object[] options = {"Stand", "Hit", "Double Down"};
Object n;
do {
n = JOptionPane.showOptionDialog(null,
"Would you like to do?",
"Options",
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
options,
options[0]); //default button title
}while(n==null);
if(n.equals(1)) {
//code to stand (not accept any more cards)
}
else if(n.equals(0)) {
//code to hit (add another card)
//code to remove double down option until next hand
}
else if(n.equals(2) && canDoubleDown) {
//code to double down (double bet, and add only one other card to hand)
}