2016-12-31 1 views
-2

내 코드에서 내 humandealer 변수를 내 방법 PlayGame()에있는 각각의 문자열을 DealCards()에서 할당하는 방법을 찾을 수 없습니다. 내가 javac를 실행할 때마다Java의 카드 게임 문제

나는 그들이 방법 DealCards()에서 dealerOther 배열에 별도의 문자열이기 때문에 나는 그러나이 이해하지 못하는 오류 String[] cannot be converted to String.를 얻을. 누군가이 문제에 대한 도움을 주실 수 있습니까?

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(); 
} 

}

답변

2

문제는 humandealer 문자열 배열로 가지고 tmp 이후

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

문자열 (2-D 어레이의 종류)의 어레이 배열 여기.

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

변경을