📄 card.java
字号:
package blackjack;
public class Card{
private boolean[][] validCards = new boolean[4][13];
private int cardRemaining;
public Card(){
setCardStatus( true );
}
public void setCardStatus( boolean valid ){
for( int i=0; i<4; i++ )
for( int j=0; j<13; j++ )
validCards[i][j]=valid;
cardRemaining = 52;
}
public void setCardStatus( CardNumber cn, boolean valid ){
int kind = cn.getKind(),
number = cn.getNumber()-1;
boolean isValid = validCards[ kind ][ number ];
if( valid && !isValid )
cardRemaining++;
else if( !valid && isValid )
cardRemaining--;
validCards[kind][number]=valid;
}
public void reset() {
setCardStatus( true );
}
public CardNumber getCardNumber(){
int cardKind;
int cardNumber;
if( cardRemaining == 0 ) reset();
do{
cardKind = ((int)(Math.random()*131)%4);
cardNumber = ((int)(Math.random()*457)%13);
}
while( !validCards[ cardKind ][ cardNumber ] );
cardRemaining--;
validCards[ cardKind ][ cardNumber ] = false;
return new CardNumber( cardKind, cardNumber );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -