IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Aide sur List<String>


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    82
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2009
    Messages : 82
    Par défaut Aide sur List<String>
    bonjour à tous.

    voici mon problème :

    je parcours une collection d'item sous cette forme

    79488
    79488
    72625
    79488
    72625
    72625
    72625
    20005
    79488
    20005
    ....

    j'ajoute tous ces items dans ma List

    je trie ma List avec Sort()

    et maintenant mon problème, j'aimerais connaitre le nombre d'élément présent pour chaque chiffre

    j'ai trouvé pour compter tous les élements, mais moi je veux dans cet exemple savoir combien de fois il y a :

    79488
    72625
    20005

    Merci d'avance de votre aide

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    298
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 298
    Par défaut
    tu fais une boucle sur ta liste et quand le précédent = le Encours alors tu fais un +1 sur ton compteur.....

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2004
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 59
    Par défaut
    Selon l'utilisation que tu vas en faire plus tard, tu pourrais eventuellement envisager l'utilisation de Dictionnary<int, int>.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dictionnary<int, int> ldicValues = new Dictionnary<int, int>();
    foreach (liValue in llstTaList)
    {
      if (ldicValues.ContainsKey(liValue))
         ldicValues[liValue] ++;
      else
         ldicValues.Add(liValue, 1);
    }
    Euh, faudra p'tet corriger les fautes de frappes, je n'ai pas tester le code...

  4. #4
    Membre éprouvé
    Inscrit en
    Décembre 2003
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Décembre 2003
    Messages : 108
    Par défaut
    il y a beaucoup plus simple...

    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
    16
     
                List<string> list = new List<string>();
                list.Add("mot1");
                list.Add("mot2");
                list.Add("mot3");
                list.Add("mot1");
                list.Add("mot2");
                list.Add("mot1");
                list.Add("mot4");
                list.Add("mot5");
                list.Add("mot6");
                list.Add("mot1");
                //compte le nombre de "mot1" dans ta liste
                int nbmot1 = list.FindAll(mot => mot == "mot1").Count ;
                //renverra 4
                Console.WriteLine(nbmot1);

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2009
    Messages : 133
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var g = list.GroupBy(a => a); 
    foreach (var p in g) { int nbmot = p.Count; }
    Bref recherche la fonction GroupBy !
    nachtigal

  6. #6
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Citation Envoyé par mastervanou Voir le message
    il y a beaucoup plus simple...
    A condition qu'il possède Visual Studio 2008 pour la prise en charge des lambda expression. Sous Visual Studio 2005 il faut utiliser une méthode anonyme.

    Citation Envoyé par nachtigal Voir le message
    ...
    Bref recherche la fonction GroupBy !
    A condition qu'il puisse utiliser le framework 3.5.

    Flopp n'ayant rien précisé, ce sera à lui de voir ^^

Discussions similaires

  1. aide sur liste chainé
    Par hamma2009 dans le forum Langage
    Réponses: 2
    Dernier message: 11/05/2010, 12h05
  2. [AC-2007] Aide sur listes deroulantes
    Par manu.68 dans le forum Modélisation
    Réponses: 3
    Dernier message: 17/11/2009, 16h58
  3. Un peu d'aide sur la class string
    Par KindPlayer dans le forum C++
    Réponses: 27
    Dernier message: 03/06/2008, 17h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo