Separateur StringTokenizer d'autres methodes ?

Separateur StringTokenizer d'autres methodes ? - Java - Programmation

Marsh Posté le 05-02-2008 à 18:35:20    

Bonjour,
 
J'ai une variable de type string avec un contenu String modelRtf = "abc, zyui, eii, ..., z"
Je fais un traitement pour chaque mot entre virgule

Code :
  1. StringTokenizer st = new StringTokenizer(modelRtf,"," );
  2. while(st.hasMoreTokens()){
  3.     mon traitement;
  4. }


 
Juste à titre de curiosité car je suis débutant et pas encore très habitué à l'anglais dans les docs...
(en parlant de doc en anglais http://java.sun.com/j2se/1.4.2/docs/ qui est pas mal à mon avis quand on s'est habitué à son fonctionnement)
Il y a t-il d'autre méthode pour faire ce même traitement aussi simplement ?


Message édité par lhonolulu le 11-02-2008 à 11:33:50
Reply

Marsh Posté le 05-02-2008 à 18:35:20   

Reply

Marsh Posté le 05-02-2008 à 19:57:12    

Code :
  1. String[] mots = modelRtf.split("," );

Reply

Marsh Posté le 11-02-2008 à 11:26:31    

J'aurai tendance à dire que StringTokenizer est plus performant mais en fait ça dépend surtout du type de chaine que tu veux découper.
 
Dans cet exemple (découpage par rapport à 1 caractère) ces 2 mécanismes font la même chose.
D'une façon générale, ce n'est pas le cas :
 - StringTokenizer : le 2eme paramètre est une liste de délimiteurs
 - String.split : le paramètre est une expression régulière suivant laquelle découper.
 
Exemple :

Code :
  1. String modelRtf = "abc, zyui,eii ,toto, z";
  2. StringTokenizer st = new StringTokenizer(modelRtf, ", " );
  3. String[] mots = modelRtf.split(", " );


 
Résultat de st     => "abc" "zyui" "eii" "toto" "z" (5 éléments)
Résultat de mots => "abc" "zyui,eii ,toto" "z"    (3 éléments)
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed