Overblog Suivre ce blog
Editer l'article Administration Créer mon blog

Présentation

  • : Romagny13 - Du .NET,du pur .NET
  • Romagny13 - Du .NET,du pur .NET
  • : Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions
  • Contact

Recherche

Articles Récents

6 mai 2007 7 06 /05 /mai /2007 16:55
3 – ForEach()
            string smessage=string.Empty;
            oContacts.ForEach(delegate(Contact oContact)
            {
                smessage += oContact.ToString() + Environment.NewLine;
            }
                );
           MessageBox.Show(smessage);
 
4 – AsReadOnly() – pour obtenir la collection mais ne pouvant être que consultée
            //AsReadOnly() retourne la collection mais en lecture seule (ici l'edition dans le datagridview sera impossible)
            dataGridView1.DataSource = oContacts.AsReadOnly();
 
5 – GetRange() – Pour extraire des éléments de la collection
            // extrait à partir de la position 2 de la collection, 3 éléments (contact)
            List<Contact> oRangeContacts = oContacts.GetRange(2, 3);
V – Chercher/Trouver
1 – Find() – trouver un élément respectant un prédicat ( si plusieurs éléments correspondent au prédicat c’est le premier qui respecte celui-ci est renvoyé)
             Contact oContact = oContacts.Find(StartWith);
             MessageBox.Show(oContact.ToString());
 
2 – IndexOf () – trouver l’index d’un élément
            Contact oContact = oContacts.FindLast(StartWith);
            int nIndex =oContacts.IndexOf(oContact);
 
3 – FindIndex() – renvoie l’index (int) de la position du premier élément respectant un prédicat
             MessageBox.Show(oContacts.FindIndex(StartWith).ToString());
 
4 – FindLast() – trouver le dernier élément respectant un prédicat
             MessageBox.Show(oContacts.FindLast(StartWith).ToString());
 
5 – LastIndexOf() – trouver l’index du dernier element de la collection respectant un prédicat
            Contact oContact = oContacts.FindLast(StartWith);
            int nIndex =oContacts.LastIndexOf(oContact);
 
6 – FindLastIndex() – renvoie l’index (int) du dernier élément de la collection respectant un prédicat
           MessageBox.Show(oContacts.FindLastIndex(StartWith).ToString());
 
7 – FindAll() – Trouver tous les elements (FindAll() retourne une liste générique) respectant un prédicat
             dataGridView1.DataSource = oContacts.FindAll(StartWith);
 
VI – trier
 1 - Avec l’interface  IComparable implémentée par la classe Contact
oContacts.Sort();
 
2 -Avec l’interface  IComparer implémentée par la classe ContactNameComparer (classe imbriquée dans la classe Contact)
oContacts.Sort(new Contact.ContactNameComparer(SorterMode.Ascending));
 
 Si vous ne connaissez pas bien comment trier avec IComparable et IComparer vous pouvez regarder cet article
Ou encore regarder cette source ;)
 
 
VII – Conversions
 
1 – CopyTo() – copier vers un tableau la collection
            Contact[] ContactArrray;
            ContactArrray = new Contact[5];
            oContacts.CopyTo(ContactArrray);
 
            dataGridView1.DataSource = ContactArrray;
 
2 – ToArray() – convertir en tableau la collection
Contact[] ContactArrray = oContacts.ToArray();
 
3 –ConvertAll() - Convertir la collection vers un autre type
Exemple :
Je vais convertir ma liste de contacts vers une liste de personnes
            List<Person> ListPerson = oContacts.ConvertAll(new Converter<Contact, Person>(ConvertToPerson));
 
            dataGridView1.DataSource = ListPerson;
 
+ La méthode appelée pour effectuer la conversion :
public Person ConvertToPerson(Contact oContact)
        {
            return new Person(oContact.ID, oContact.Name, oContact.FirstName, oContact.Email);
        }
 
+ La classe Person :
public class Person
    {
        private int _ID;
        private string _Name;
        private string _FirstName;
        private string _Email;
 
        public Person()
        {
        }
        public Person(int ID, string Name, string FirstName, string Email)
        {
            this.ID = ID;
            this.Name = Name;
            this.FirstName = FirstName;
            this.Email = Email;
        }
 
        public int ID
        {
            get { return _ID; }
            set { _ID = value; }
        }
        public string Name
        {
            get { return _Name; }
            set { _Name = value; }
        }
        public string FirstName
        {
            get { return _FirstName; }
            set { _FirstName = value; }
        }
        public string Email
        {
            get { return _Email; }
            set { _Email = value; }
        }
 
    }
 
VIII – autres
 
1 – Contains() – Savoir si la collection contient un element
            Contact oContact = oContacts.Find(StartWith);
            MessageBox.Show(oContacts.Contains(oContact).ToString());
 
2 – Exists() – renvoie un Bool indiquant si au moins un element de la collection respecte le prédicat
MessageBox.Show(oContacts.Exists(StartWith).ToString());
 
3 –TrueForAll() – renvoie un bool indiquant si tous les éléments de la collection respecte un prédicat
            MessageBox.Show(oContacts.TrueForAll(StartWith).ToString());
 
4 – Equals() – compare 2 éléments et renvoie un bool
            MessageBox.Show(oContacts[1].Equals(oContact).ToString());
 
5 – GetType() – renvoie le type de la collection
MessageBox.Show(oContacts.GetType().ToString());
 
6 Reverse () – méthode permettant inverser les éléments de la collection
            oContacts.Reverse();
 
7– Count
            MessageBox.Show("Nombre de contacts dans la collection : " + oContacts.Count.ToString());
 
8– Capacity
MessageBox.Show(oContacts.Capacity.ToString());
 
 
 
Liens
Library (System.Collections.Generic.List)
Le centre de development C#
un coach C# (comme il existe pour VB.NET,ASP.ET et VSTS) a vu le jour :
 

Partager cet article

Repost 0
Published by Romagny13 - dans C 1.0- 2.0- 3.0
commenter cet article

commentaires