自己写的版本1:
import java.util.*;
public class DemoDDZ {
public static void main(String[] args) {
ArrayList<String> style = new ArrayList<>();
ArrayList<String> num = new ArrayList<>();
ArrayList<String> card = new ArrayList<>();
ArrayList<String> one = new ArrayList<>();
ArrayList<String> two = new ArrayList<>();
ArrayList<String> three = new ArrayList<>();
style.add("♠");
style.add("♥");
style.add("♦");
style.add("♣");
num.add("A");
num.add("2");
num.add("3");
num.add("4");
num.add("5");
num.add("6");
num.add("7");
num.add("8");
num.add("9");
num.add("10");
num.add("J");
num.add("Q");
num.add("K");
for (int i = 0; i < style.size(); i++) {
for (int i1 = 0; i1 < num.size(); i1++) {
card.add(style.get(i) + num.get(i1));
}
}
card.add("大王");
card.add("小王");
Collections.shuffle(card);
for (int i = 0; i < card.size() - 3; i += 3) {
one.add(card.get(i));
two.add(card.get(i + 1));
three.add(card.get(i + 2));
}
System.out.println(one);
System.out.println(two);
System.out.println(three);
}
}
版本2
import java.util.*;
public class DemoDDZ {
public static void main(String[] args) {
ArrayList<String> style = new ArrayList<>();
ArrayList<String> num = new ArrayList<>();
ArrayList<String> card = new ArrayList<>();
ArrayList<String> one = new ArrayList<>();
ArrayList<String> two = new ArrayList<>();
ArrayList<String> three = new ArrayList<>();
ArrayList<String> leftcard = new ArrayList<>();
style.add("♠");
style.add("♥");
style.add("♦");
style.add("♣");
num.add("A");
num.add("2");
num.add("3");
num.add("4");
num.add("5");
num.add("6");
num.add("7");
num.add("8");
num.add("9");
num.add("10");
num.add("J");
num.add("Q");
num.add("K");
for (int i = 0; i < style.size(); i++) {
for (int i1 = 0; i1 < num.size(); i1++) {
card.add(style.get(i) + num.get(i1));
}
}
card.add("大王");
card.add("小王");
Collections.shuffle(card);
for (int i = 0; i < 3; i++) {
leftcard.add(card.get(card.size() - 1));
card.remove(card.size() - 1);
}
Iterator<String> ite = card.iterator();
while (ite.hasNext()) {
one.add(ite.next());
two.add(ite.next());
three.add(ite.next());
}
System.out.println(one);
System.out.println(two);
System.out.println(three);
}
}
发牌过程优化思想
优化后代码
import java.util.*;
public class DemoDDZ {
public static void main(String[] args) {
ArrayList<String> card = new ArrayList<>();
ArrayList<String> one = new ArrayList<>();
ArrayList<String> two = new ArrayList<>();
ArrayList<String> three = new ArrayList<>();
ArrayList<String> leftcard = new ArrayList<>();
String[] style = {"♠", "♥", "♦", "♣"};
String[] num = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"};
for (int i = 0; i < style.length; i++) {
for (int i1 = 0; i1 < num.length; i1++) {
card.add(style[i] + num[i1]);
}
}
card.add("大王");
card.add("小王");
Collections.shuffle(card);
for (int i = 0; i < card.size(); i++) {
if (i < 51) {
if (i % 3 == 0) {
one.add(card.get(i));
} else if (i % 3 == 1) {
two.add(card.get(i));
} else {
three.add(card.get(i));
}
} else {
leftcard.add(card.get(i));
}
}
System.out.println(one);
System.out.println(two);
System.out.println(three);
System.out.println(leftcard);
}
}