2010-09-11 6 views
1

J'ai besoin d'aide pour scinder cette chaîne, mais je n'arrive pas à trouver la bonne méthode. Supposons que j'ai deux chiffres sur une ligneDivision et attribution d'une chaîne avec des espaces comme délimiteur

12 101 

Je voudrais prendre la première et l'assigner à une variable, puis prenez la deuxième et l'assigner à une variable, cela peut sembler facile, mais pour moi je ne peut pas trouver la bonne façon de le faire?

Répondre

4

diviser la chaîne sur l'espace qui vous donnera un tableau de chaînes qui peuvent être stockées dans deux variables. Si nécessaire, vous pouvez les convertir en ints comme indiqué ci-dessous:

String text = "12 101"; 
String[] split= text.split("\\s+"); 
String first = split[0]; 
String second = split[1]; 

//if you want them as ints 
int firstNum = Integer.parseInt(first); 
int secondNum = Integer.parseInt(second); 
0
String[] result = myString.split(" "); 

devrait fonctionner. Vous pouvez ensuite affecter les valeurs à une variable du tableau si vous le souhaitez. Bien que vous devriez noter que s'il y a deux espaces, cela créera un tableau avec une longueur de trois, l'élément du milieu étant une chaîne vide.

0
String s = "12 101"; 
String[] splitted = s.split("\s"); // \s = any whitespace character except newline 
0
String text = "12 101"; 
String[] splitted = text.split("\\s+"); 
System.out.println(splitted[0]); 
System.out.println(splitted[1]); 

imprimera:

12 
101 

utilisant \ s + divise la chaîne à chaque espaces dans votre texte. Les espaces multiples sont ignorés.

Seulement en train de diviser (""); aboutira à des champs vides (par exemple "102 12 4" => [102, , 12, 4]).

+0

il devrait être en fente [0] et fente [1] au lieu du texte [0] et le texte [1]. – dogbane

+0

Vous devriez mettre ce dernier exemple dans un bloc de code afin que les gens puissent voir les deux espaces entre '102' et' 12'. –

0
String[] myStringArray = myString.split(" "); 

va diviser la chaîne en un tableau myStringArray

Questions connexes