deal.java
来自「Java与面向对象程序设计实验教学讲义.复数类的实现,复数类的复杂运算,身份证号」· Java 代码 · 共 30 行
JAVA
30 行
import java.util.*;class Deal { public static void main(String args[]) { int numHands = Integer.parseInt(args[0]); int cardsPerHand = Integer.parseInt(args[1]); // 生成一副牌(含52张牌)。 String[] suit = new String[] {"spades", "hearts", "diamonds", "clubs"}; String[] rank = new String[] {"ace","2","3","4","5","6","7","8","9","10","jack","queen","king"}; List deck = new ArrayList(); for (int i=0; i<suit.length; i++) for (int j=0; j<rank.length; j++) deck.add(rank[j] + " of " + suit[i]); Collections.shuffle(deck); //随机改变deck中元素的排列次序,即洗牌。 for (int i=0; i<numHands; i++) System.out.println(dealHand(deck, cardsPerHand)); //生成一手牌并将其输出。 } public static List dealHand(List deck, int n) { int deckSize = deck.size(); List handView = deck.subList(deckSize-n, deckSize); //从deck中截取一个子链表 List hand = new ArrayList(handView); //利用该子链表创建一个链表,作为本方法返回值。 handView.clear(); //将子链表清空。 return hand; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?