gpt4 book ai didi

java - 将数组值列表分配为字符串

转载 作者:行者123 更新时间:2023-12-01 13:27:53 25 4
gpt4 key购买 nike

我有一个程序,可以生成一副扑克牌并显示七张随机牌。我尝试将选定的七张卡传递到一个字符串中,但是我只知道如何将整个数组设置为一个字符串,而不仅仅是选定的七张卡。

public class PlayedCards{        
public static void main(String[] args){
int[] deck = new int[52];
String[] suits = {"Spades", "Clubs", "Diamonds", "Hearts"};
String[] ranks = {"Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"};
for (int a = 0; a < deck.length; a++){
deck[a]= a;
}

for (int a = 0; a <deck.length; a++){
int order = (int)(Math.random() * deck.length);
int temp = deck[a];
deck[a] = deck[order];
deck[order] = temp;
}

for (int a = 0; a < 7; a++){
String suit = suits[deck[a] / 13];
String rank = ranks[deck[a] % 13];
System.out.println(rank + " of " + suit);
}

System.out.println(rank + " of " + suit);
}
}

我的问题是:

我的数组中显示的卡片的值是 0-6 吗?

如果是这样,我如何将数组的这些值设置为一个单独的字符串,然后我可以在用户播放时调用该字符串?

最佳答案

如果您只想创建一个代表玩家所玩内容的String,则可以直接将每个卡牌类型和编号连接到结果String(隐式创建一个new String 在每个连接上),或者更好的是,使用 StringBuilder 来执行此操作并在最后转换为 String。像这样:

StringBuilder sb = new StringBuilder();
for (int a = 0; a < 7; a++) {
...
sb.append(a+1).append(": ").append(rank).append(" of ").append(suit).append("\n");
...
String playedCards = sb.toString();
System.out.println(playedCards);

关于java - 将数组值列表分配为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21716476/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com