public class Card {
private String suit;
private int num;
public Card(String suit, int num){
this.suit = suit;
this.num = num;
}
public String getSuit() {
return suit;
}
public void setSuit(String suit) {
this.suit = suit;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
@Override
public String toString() {
return suit + " " + num;
}
}
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Random;
public class CardList {
private static final String[] SUITS = {"♦","♥","♠","♣"};
public static List<Card> buyCards() {
List<Card> list = new ArrayList<>();
for (int i = 0; i < SUITS.length; i++) {
for (int j = 1; j <= 13; j++) {
Card card = new Card(SUITS[i], j);
list.add(card);
}
}
return list;
}
public static void shuffle(List<Card> list) {
Random random = new Random();
for (int i = list.size()-1; i > 0; i--) {
int index = random.nextInt(i);
swap(list,i,index);
}
}
public static void swap(List<Card> list, int i, int j){
Card tmp = list.get(i);
list.set(i,list.get(j));
list.set(j,tmp);
}
public static void main(String[] args) {
List<Card> list = buyCards();
shuffle(list);
List<List<Card>> hand = new ArrayList<>();
List<Card> hand1 = new ArrayList<>();
List<Card> hand2 = new ArrayList<>();
List<Card> hand3 = new ArrayList<>();
hand.add(hand1);
hand.add(hand2);
hand.add(hand3);
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 3; j++) {
Card card = list.remove(0);
hand.get(j).add(card);
}
}
System.out.println("第一个人的牌为:" + hand.get(0));
System.out.println("第一个人的牌为:" + hand.get(1));
System.out.println("第一个人的牌为:" + hand.get(2));
System.out.println("剩下的牌: " + list);
}
}