Comment puis-je obtenir les valeurs uniques d'un tableau dans .net?
Question
Dites que j'ai ce tableau: MyArray (0) = & aa; aaa " MyArray (1) = " bbb " MyArray (2) = "aaa"
Existe-t-il une fonction .net qui peut me donner les valeurs uniques? Je voudrais quelque chose comme ceci comme sortie de la fonction: OutputArray (0) = & aa; aaa " OutputArray (1) = "bbb"
La solution
En supposant que vous ayez .Net 3.5 / LINQ:
string[] OutputArray = MyArray.Distinct().ToArray();
Autres conseils
Une solution pourrait être d'utiliser LINQ comme dans l'exemple suivant:
int[] test = { 1, 2, 1, 3, 3, 4, 5 };
var res = (from t in test select t).Distinct<int>();
foreach (var i in res)
{
Console.WriteLine(i);
}
Cela imprimerait le résultat attendu:
1
2
3
4
5
Vous pouvez utiliser un dictionnaire pour les ajouter avec une clé. Lorsque vous les ajoutez, vérifiez si la clé existe déjà.
string[] myarray = new string[] { "aaa", "bbb", "aaa" };
Dictionary mydict = new Dictionary();
foreach (string s in myarray) {
if (!mydict.ContainsKey(s)) mydict.Add(s, s);
}
Utilisez la classe HashSet incluse dans .NET 3.5.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow