Avatar billede juks Novice
04. november 2012 - 14:45 Der er 10 kommentarer og
1 løsning

Sum af lister

hej
Jeg har 2 dim. liste der består af [int Val1,int Val2]

nu vil jeg gerne have sum af Val1, hvor val2 = 1 hvordan gør man det
Avatar billede arne_v Ekspert
04. november 2012 - 15:04 #1
Jeg formoder at LINQ Select og Sum kan goere det.

Men det er ikke helt klart for mig hvordan dine data er.
Avatar billede juks Novice
04. november 2012 - 15:13 #2
jeg har en liste der bygger på en klasse.

clas listtruk
{
public int KundeNr { get; set; }
public  int RuteNr { get; set; }
}

laver så en liste også ville jeg gerne lave en foreach på kunder hvor rutenr =1 fx
Avatar billede arne_v Ekspert
04. november 2012 - 15:19 #3
vil du lave en foreach eller en sum?

foreach(listtruk lt in liste.Select(e => e.RuteNr == 1)
{

}

int sum = liste.Select(e => e.RuteNr == 1).Sum(e => e.KundeNr);
Avatar billede arne_v Ekspert
04. november 2012 - 15:19 #4
hm - sum af kunde nr giver vist ikke mening
Avatar billede juks Novice
04. november 2012 - 15:25 #5
Arne :-) nej det var nemlig det der slog mig :-)
skal have fundet alle kunders Demand derfor jeg prøvede med
e => e.RuteNr == 1 men der får jeg en fejl om at den ikke kan konventere bool til int .

derfor jeg ville prøve at høre jeres løsning :-)
Avatar billede arne_v Ekspert
04. november 2012 - 15:31 #6
ups

det skal vaere Where og ikke Select
Avatar billede juks Novice
04. november 2012 - 15:38 #7
ahh du er som sendt fra himlen ...
er ny i lister og trænker lidt for meget array tror jeg :-)
løsningen blev




public  double GetDemandListeSum(int Køretøj, List<ParallelList> KunderPaaRuteListe)
        {

            int sum=0;
          foreach (ParallelList lt in KunderPaaRuteListe.Where(e => e.RuteNr == 1))
          {

          sum+=_kunder[lt.KundeNr].demand;

          }
       

            return sum;


        }
Avatar billede arne_v Ekspert
04. november 2012 - 15:47 #8
KunderPaaRuteListe.Where(e => e.RuteNr == 1).Sum(lt => _kunder[lt.KundeNr].demand)

burde virke
Avatar billede juks Novice
04. november 2012 - 15:53 #9
og det gør den ...
bortset fra e ikke er godt at bruge i en form :-)




men jeg forstår syntaksen i den søgning  :-)
Avatar billede arne_v Ekspert
04. november 2012 - 15:56 #10
saa smider jeg et svar
Avatar billede juks Novice
04. november 2012 - 16:11 #11
men jeg forstår ikke syntaksen mente jeg .. er det noget du kan forklare eller henvise til forklaring?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester