waterw72
Messages postés63Date d'inscriptionjeudi 30 septembre 2004StatutMembreDernière intervention18 juillet 2008
-
18 janv. 2008 à 09:50
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 2011
-
21 janv. 2008 à 14:22
Bonjour,
<li>J'ai un fichier texte de 1200 lignes que je parcours ligne par ligne.</li><li>J'ai des phrases ( 2 ou 3 mots) qui sont interdites.</li><li>Je dois copier le fichier texte dans un autre sans les phrases interdites.</li>
2 solutions :
1°) je fais une boucle qui parcours mon tableau "interdit" (contenant les phrases interdites) à chaque ligne lues.
2°) je fais une succession de if ... then à chaque ligne lues.
le code est plus facile à gérer pour la première solution mais sans doute moins rapide.
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 18 janv. 2008 à 11:37
Bonjour,
Pourquoi moins rapide ? car tu as un tableau et tu boucles sur ce tableau ? tu sentiras pas la différence à côté d'une comparaison de String, et puis au moins ton code sera lisible et maintenable ...
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 21 janv. 2008 à 14:22
Salut
Tu as d'autres solutions a étudiée
Tu mets tes mots dans une Arraylist ou encore mieux une List<String>
et après tu testes avec un
malisteinterdite.contains(monmotatester) et si false tu ne l'ecrit pas dans le fichier de sortie.
Encore plus rapide normalement, tu utilises
1-> Remplir avec la liste des mots interditsun dictionnary<String> la clé ton mot et ta valeur null
2-> Test mot interdit
et tu fais un ContainsKey(motatester)
normalement cette méthode doit être plus rapide car les dictionnaires utilise un temps quasi constant pour trouver un élement dans une liste.