Lecture de l'entrée clavier mot par mot

Résolu
rimo - Modifié par cs_Julien39 le 20/02/2014 à 11:44
cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
- 20 févr. 2014 à 21:40
Bonjour,

Comment on peut lire des string a partir de l'écran mot par mot en java ?

Merci

3 réponses

KX
Messages postés
16523
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mai 2022
124
20 févr. 2014 à 20:06
Pourquoi utiliser StringTokenizer ? Cette classe ne devrait plus être utilisé, c'est marqué dans la documentation.

StringTokenizer is a legacy class that is retained for compatibility reasons although its use is discouraged in new code. It is recommended that anyone seeking this functionality use the split method of String or the java.util.regex package instead.

Donc soit on utilise split comme proposé :

String[] tab = str.split(" ");
for (String s : tab)
   System.out.println(s);

Soit on customise un peu le Scanner que tu as déjà mis en place.

Scanner sc = new Scanner(System.in);
sc.useDelimiter(" ");
System.out.println("Entrez votre texte");
while (sc.hasNext())
    System.out.println(sc.next());

Dans les deux cas on utilise une expressions régulière, qui est certes ici très simple puisque ce n'est que
" "
.
2
cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
366
Modifié par cs_Julien39 le 20/02/2014 à 11:43
Salut,

Scanner sc = new Scanner(System.in);
System.out.println("Entrez votre texte");
String str = sc.nextLine();
StringTokenizer st = new StringTokenizer(str);
while(st.hasMoreToken()){
   System.out.println(st.nextToken());
}
0
cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
366
20 févr. 2014 à 21:40
Tiens, je ne savais pas !
Je pensais que StringTokenizer était à préférer à split lorsque l'expression régulière était simple.
Merci pour l'info
0
cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
366
20 févr. 2014 à 11:44
Salut,

J'ai édité le titre et le message qui n'étaient pas très clairs, fais attention la prochaine fois.
0