做牌思路:
一副扑克有54张牌,故先创建一个存储54个字符的数组
有4种花色,一种花色有13张牌
可以创建一个花色数组和13张牌的数组
然后使用嵌套for循环,将52张牌创建好
最后单独创建大小王
public static void start(){
String[] poker = new String[54];
String[] colors = {"♠","♥","♦","♣"};
String[] numbers = {"3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K", "A", "2"};
int count = 0;
for(int i=0; i<colors.length; i++){
for(int j=0; j<numbers.length; j++){
poker[count] = colors[i] + numbers[j];
count++;
}
}
poker[count++] = "small🃏";
poker[count] = "big🃏";
System.out.println("新牌:");
for(int i=0; i<poker.length; i++){
System.out.print(poker[i] + " ");
}
System.out.println();//换行
洗牌思路:
洗牌的目的就是打乱牌组顺序
可以随机生成两个1到54内的整数,然后使用索引交换数组中的两个值
多次交换(如54次)完成洗牌
System.out.println("开始洗牌...");
for(int i=0; i<poker.length; i++){
int index1 = (int)(Math.random() * poker.length);
int index2 = (int)(Math.random() * poker.length);
String temp = poker[index1];
poker[index1] = poker[index2];
poker[index2] = temp;
}
System.out.println("洗牌后:");
for(int i=0; i<poker.length; i++){
System.out.print(poker[i] + " ");
}
System.out.println();//换行