Lecture de l'entrée clavier mot par mot [Résolu]

-
Bonjour,

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

Merci
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
15913
Date d'inscription
samedi 31 mai 2008
Statut
Contributeur
Dernière intervention
17 janvier 2019
3626
2
Merci
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
" "
.

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 111 internautes nous ont dit merci ce mois-ci

Commenter la réponse de KX
Messages postés
6450
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
272
0
Merci
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());
}
cs_Julien39
Messages postés
6450
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
272 -
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
Commenter la réponse de cs_Julien39
Messages postés
6450
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
17 mai 2018
272
0
Merci
Salut,

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

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.