我正在创建一个黑杰克游戏。我知道如果Ace出现,它会询问用户Ace是低还是高。
for(Card card : hand){
ui.choseAce = false;
if(card.getPointValue() == 1){//If it is an ace.
ui.lowOrHigh();//Preps UI to ask if ace is low or high
} else{
if(hand.equals(playersHand)){
playerPointTotal += card.getPointValue();
} else{
dealerPointTotal += card.getPointValue();
}
}
}
在另一个班级......
public void lowOrHigh(){
hitButton.setVisible(false);
standButton.setVisible(false);
lowButton.setVisible(true);
highButton.setVisible(true);
updateUI(buttonPanel);
inputJTFLabel.setText("Is your ACE low or high?");
}
然后按钮......
if(obj.equals(lowButton)){
choseAce = true;
Game.playerPointTotal += 1;
}
if(obj.equals(highButton)){
choseAce = true;
Game.playerPointTotal += 11;
}
我尝试在lowOrHigh()方法中添加while循环...
while(!choseAce){}
但是当一个王牌出现时它只是冻结了。我也尝试将类似的while循环放入增强的for循环中。刚冻结。
我希望增强的for循环等待,直到按下highButton或lowButton然后继续返回它停止的位置,而不必保存循环位置等。
编辑:如果我提示JOptionPane问题会暂停for循环,直到JOPtionPane被回答?