Salut
Qu'elle est la meilleure technique pour ajouter une hashtable dans une liste si celle ci n'est pas deja presente a la liste?
Merci
Salut
Qu'elle est la meilleure technique pour ajouter une hashtable dans une liste si celle ci n'est pas deja presente a la liste?
Merci
Envoyé par funtix
Je vois pas vraiment qu'est-ce que tu entends par "meilleure technique". Je ne sais qu'une qui est possible.
Je te conseille quand meme d'utiliser les collections generiques (List<T> et Dictionary<TKey, TValue>).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ArrayList lst = new ArrayList(); Hashtable h1 = new Hashtable(); h1.Add(1, "un"); Hashtable h2 = new Hashtable(); h2.Add("un", 1); lst.Add(h1); lst.Add(h2); string un = ((Hashtable)lst[0])[1].ToString();
Alors le code devient:
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<Dictionary<int, string>> lst = new List<Dictionary<int, string>>(); Dictionary<int, string> dct = new Dictionary<int, string>(); dct.Add(1, "un"); lst.Add(dct); Dictionary<string, int> dctInv = new Dictionary<string, int>(); dctInv.Add("un", 1); // On obtiendra une erreur de compilation. Il n'est pas // possible d'ajouter un Dictionary<string, int> dans la liste. //lst.Add(dctInv); string un = lst[0][1];
Je me suis mal expliqué.
J'ai une liste qui contient des Hashtables.
Quand je mets a jour la liste je voudrais savoir s'il y une méthode qui permet de savoir si un l'elementa ajouter dans la liste (une hashtable en l'occurence) est deja present.
J'ai vu qu'il y avait des methodes Find et Exist mais je n'ai pas trouvé d'exemples. Et je n'ai pas reussi a m'en servir.
Sinon je peux toujours faire ca a la main...
Je pense avoir compris comment marcher les Predicates dans les methodes Find, Exist...
informations est la hashtable a ajouter.
Ca fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 bool is_present = this.playlist.Exists(delegate(Hashtable t) { return t["date"].ToString() == informations["date"].ToString(); }); if (!is_present) this.playlist.Add(informations);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager