爪哇中的纸牌游戏问题



在我的代码中,我找不到一种方法将方法PlayGame()中的humandealer变量分配给它们由DealCards()组成的各自字符串。

每当我运行javac时,我都会收到一个错误String[] cannot be converted to String.但是我不明白这一点,因为它们是方法DealCards()dealerOther数组中的单独字符串。有人可以在这个问题上给我一些帮助。

import java.util.Random;
public class GAME_8315085 {
static Random rand = new Random();
public static String[] MakeDeck() {
String[] deck=new String[51];
int k=0;
String[] suits={"u2660", "u2661", "u2662", "u2663"};
String[] ranks={"2","3","4","5","6","7","8","9","10","J","Q","K","A"};
for (int i=0;i<suits.length;i++) {
for (int j=0;j<ranks.length;j++) {
if (suits[i].equals("u2663") && ranks[j].equals("Q")) {
;
}
else {
deck[k]=ranks[j]+suits[i];
k++;
}
}
}
return deck;
}
public static void ShuffleDeck(String[] deck) {
for (int i=0;i<deck.length;i++) {
int random = rand.nextInt(deck.length);
String tmp=deck[i];
deck[i] = deck[random];
deck[random]=tmp;
}
}
public static String[][] DealCards(String[] deck) {
String[][] dealerOther = new String[2][26];
int j=0;
for (int i=0; i<=deck.length;i+=2) {
dealerOther[0][j]=deck[i];
j++;
}
j=0;
for (int i=1; i<deck.length;i+=2) {
dealerOther[1][j]=deck[i];
j++;
}
return dealerOther;
}
public static void PlayGame() {
String[] deck = MakeDeck();
ShuffleDeck(deck);
String[][] tmp=DealCards(deck);
String human=tmp[0];
String dealer=tmp[1];
}
public static void main(String[] args) {
PlayGame();
}

}

问题就在这里

String[][] tmp=DealCards(deck);
String human=tmp[0];
String dealer=tmp[1];

由于tmp是字符串数组(一种二维数组),因此humandealer必须是字符串数组。

将其更改为

String[][] tmp=DealCards(deck); 
String[] human=tmp[0];
String[] dealer=tmp[1];

最新更新