Bonjour,
J'ai une List<String> avec des éléments, dont certain sont des doublons, et en sortie j'aimerai récuperer une liste sans les doublons.
Ce qui est délicat si je supprime un élément dans la collection alors que je la parcours, je risque d'avoir un OutOfBoundException.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 List<String> locale = new List<string>(); locale.Add("toto"); locale.Add("123"); locale.Add("toto"); locale.Add("toto"); locale.Add("123"); locale.Add("toto"); locale.Add("toto"); locale.Add("bidule[]***"); locale.Add("tobidule[]***to"); locale.Add("bidule[]***"); locale.Sort();
Ne dois-on pas faire l'opération en utilisant une autre liste tampon ?
Merci beaucoup
Voici ce que j'ai fais, et qui ne fonctionne pas correctement :
Il faut que je gére mieux l'index pour ne pas creer une Exception, et j'obtiens encore 1 doubon avec cette méthode... l'algorithme n'est pas bon !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 List<String> copie = new List<string>(); int i = 0; foreach (String s in locale) { try { if (locale[i] != locale[++i + 1]) { copie.Add(locale[i]); } } catch (Exception e) { } }
Partager