2017-04-22 1 views
1

J'essaie de trouver une affectation pour prendre des jetons à partir d'un fichier txt (qui sont des ensembles de lettres/chiffres qui n'ont pas d'espace les séparant) et les ajouter à un tableau.Ajout de "jetons" à un tableau

Mon tableau est configuré comme celui-ci

private String[] arrayOfTokens; 

Le fichier txt se lit comme ce

10 tewnty 30.5 star-fish -5 
1 two 3 
4 five 6 seven 
jello 9 hike 5 
10 9 8 7 6 5 4 3 2 1 

Pour être clair la première ligne aurait 5 jetons (« 10 », « vingt » , "30.5", "étoile-poisson", et "-5") et la seconde aurait 3 ("1", "deux" et "3")

Une des choses qui me dégoûte est cependant que ça dit ça ... "La première ligne de texte aboutirait aux cinq jetons étant stocké aux emplacements [0] [0], [0] [1], [0] [2], [0] [3] et [0] [4]. La deuxième ligne de texte résulterait dans le stockage des trois jetons dans les emplacements [1] [0], [1] [1] et [1] [2]. "Il dit seulement que j'ai besoin d'un tableau donc je ne suis pas J'ai simplement cherché en ligne pour certaines choses, mais ce que j'ai trouvé ne fait que placer tout le fichier txt dans un tableau, j'essaie juste d'ajouter les jetons.

+0

Vous avez besoin d'un tableau à deux dimensions ou, pour être plus précis, d'un tableau de tableaux. Si le texte d'assignation dit explicitement que "exactement un tableau est nécessaire", alors la formulation de l'assignation est fausse et l'exercice, tel qu'il est donné, n'est pas résoluble, d'autant plus que vous avez besoin de tableaux déchirés. Vous pouvez trouver les bases dans [ce tutoriel Oracle] (https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html). – Turing85

+1

oh geez. Permettez-moi d'aller faire des recherches sur ce que c'est lol .. –

+0

hmmm il dit "Stocker le jeton trouvé sur chaque ligne de texte dans un tableau 2D.Ce tableau 2D doit stocker des objets String." ce qui m'amène à croire que c'est juste un tableau –

Répondre

-1

Vous pouvez utiliser un tableau en dents de scie pour résoudre le problème.Un tableau dentelé est un tableau dont les éléments sont des tableaux mais dont les dimensions et les tailles peuvent être différentes.Voici un code que vous pouvez essayer:

int numberOfLineOfTheFile; /* put the number of line of your file here */ 
String[][] tokens = new String[numberOfLineOfTheFile][]; 
String[] arrayOfTokens; 

try (BufferedReader br = new BufferedReader(new FileReader(file))) { 
    String line; 
    int i = 0; 
    while ((line = br.readLine()) != null) { 
     arrayOfTokens = line.split(" "); 
     tokens[i++] = arrayOfTokens; 
    } 
} 
+1

Les réponses au code uniquement sont déconseillées. S'il vous plaît ajouter quelques explications à votre réponse. De plus, OP n'a pas demandé une réponse prête à copier, mais des explications/astuces pour la faire avancer dans la bonne direction. EDIT: non, je n'ai pas baissé votre réponse. – Turing85