【发布时间】:2017-08-24 20:05:31
【问题描述】:
创建一个随机卡片数组。 使用 toString 方法(未排序)在格式化的打印语句中输出此数组。 使用选择排序对数组进行排序。 从牌组中最高的牌到最低的牌排序。 字母升序:梅花(最低),其次是菱形、红心和黑桃(最高) 一副牌中最高的牌是黑桃 ACE,最低的是梅花 2。 使用 toString 方法输出一个排序好的数组。 同时打印出迭代次数
我是一名初学者,需要帮助,这是我开始做的一些事情。
public class DeckOfCards2 {
public static void main(String[] args) {
int[] deck = new int[52];
String[] suits = {"Spades", "Hearts", "Diamonds", "Clubs"};
String[] ranks = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
// Initialize cards
for (int i = 0; i < deck.length; i++) {
deck[i] = i;
}
// Shuffle the cards
for (int i = 0; i < deck.length; i++) {
int index = (int)(Math.random() * deck.length);
int temp = deck[i];
deck[i] = deck[index];
deck[index] = temp;
}
// Display the all the cards
for (int i = 0; i < 52; i++) {
String suit = suits[deck[i] / 13];
String rank = ranks[deck[i] % 13];
System.out.println( rank + " of " + suit);
}
}
}
【问题讨论】:
-
您好,欢迎来到 StackOverflow。这几乎是一个不错的问题 - 您自己尝试了这个问题并发布了您的代码,这很好 - 但是要改进这个问题,您需要告诉我们与您的预期相比它在什么方面不起作用。我们很乐意帮助您解决任何问题,但我们不会为您完成任务!