2017-09-27 13 views
0

Je veux prendre une corde et la diviser chaque fois que je trouve un espace. Et puis stocker chacune de ces pièces dans un tableau. Disons que j'ai cette chaîne:Comment prendre dans une chaîne et retourner un tableau après avoir modifié la chaîne?

String names = "amy bob lily harry luna james"; 

J'ai aussi cette déclaration de méthode:

public static String[] seperateNames(String names) { 
    String[] newNames; 
    // Some code here 
    return newNames[]; 
} 

Qu'est-ce que je remplir cette méthode avec je peux obtenir quelque chose comme ceci:

newNames = {"amy", "bob", "lily", "harry", "luna", "james"}; 

Ce que je pense que je devrais faire est de créer une boucle for-for et à l'intérieur il y a une instruction if qui peut vérifier s'il y a de l'espace. Mais je ne sais vraiment pas comment faire. Je pense aussi que j'aurai besoin d'utiliser trim() après que tout soit stocké dans un tableau pour supprimer des espaces avant et après chaque nom stocké dans le tableau.

Toute aide ou conseil apprécié. Merci!

+0

Le premier lien a une meilleure solution. –

+0

Chaîne [] list = names.split (""); – notyou

Répondre

0

Pour vous commencez votre affectation, String.split divise les chaînes sur une expression régulière, cette expression peut être une chaîne vide:

String[] ary = "abc".split(""); 
Yields the array: 

(java.lang.String[]) [, a, b, c] 

Se débarrasser de l'entrée 1er est laissée vide comme un exercice pour le lecteur :-)

Remarque: Dans Java 8, le premier élément vide n'est plus inclus.

+2

Message extrait de https://stackoverflow.com/questions/3413586/string-to-string-array-conversion-in-java –

0
public static String[] seperateNames(String names) { 
    return names.split(" "); 
} 
+0

Bienvenue à SO! Il est généralement utile de donner une explication rapide du code et pas seulement du code lui-même. Même si c'est simple comme ci-dessus. – sniperd