閱讀以下說明和Java程序,填補(bǔ)代碼中的空缺(1)~(6),將解答填入答題紙的對應(yīng)欄內(nèi)。
【說明】
很多依托撲克牌進(jìn)行的游戲都要先洗牌。下面的Java代碼運(yùn)行時先生成一副撲克牌,洗牌后再按順序打印每張牌的點(diǎn)數(shù)和花色。
【Java代碼】
import iava.util.List;
import java.util.Arrays;
import java.util.Collections;
class Card { //撲克牌類
public static enum Face { Ace, Deuce, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jacky, Queen, King }; //枚舉牌點(diǎn)
public static enum Suit(Clubs, Diamonds, Hearts, Spades}; //枚舉花色
private final Face face;
private final Suit suit;
public Card( Face face, Suit suit ) {
(1) face=face;
(2) suit=suit;
}
public Face getFace() { return face; }
public Suit getSuit() { return suit; }
public String getCard() { //返回String來表示一張牌
return String.format( "%s, %s", face, suit );
}
}
//牌桌類
class DeckOfCards {
private List< Card > list; //聲明List以存儲牌
public DeckOfCards() { //初始化牌桌并進(jìn)行洗牌
Card[] deck=new Card[52];
int count=0; //牌數(shù)
//用Card對象填充牌桌
for ( Card.Suit suit:Card.Suit.values() ) {
for ( Card.Face face:Card.Face.values() ) {
(3) =new Card( face, suit);
}
}
list= Arrays.asList( deck );
Collections.shuffle( list ); //洗牌
}
public void printCards ()
{
//按4列顯示52張牌
for ( int i=0; i<list.size(); i++ )
System.out.printf( "%-19s%s", list. (4) ,
((i+1)%4==0)?"\n":"" );
}
}
public class Dealer {
public static void main( String[] args ) {
DeckOfCards player= (5) ;
(6) printCards();
}
}