Avatar billede juks Novice
30. juli 2012 - 15:04 Der er 9 kommentarer og
1 løsning

arrayliste foreach men skal have punkt 1og 2

hej jeg prøver at loop igennem en liste der inderholder grupper af punkter.

Dette fungere fint nok jeg får vist tallene i listen
-----
  foreach (int point in (ArrayList)SetRoute[i])
                {
                    str = str + "-" + point.ToString();

                }

----
men jeg ville gerne kunne regne på nogle af tallene dvs det jeg skal kunne er får

point[1] -point[2]
point[2] -point[3]
point[4] -point[4]

hvordan kan man gøre dette i arraylist
Avatar billede arne_v Ekspert
30. juli 2012 - 15:10 #1
brug en for loekke fremfor en foreach loekke og indexer dig ind i ArrayList'en
Avatar billede arne_v Ekspert
30. juli 2012 - 15:11 #2
Du boer nok ioevrigt skifte fra ArrayList til List<> medmindre du skal understoette .NET 1.x
Avatar billede juks Novice
30. juli 2012 - 15:28 #3
jaa det burde jeg nok men jeg er i tidspress og derfor så har jeg brug for kunne dette her..
problemet er jo at hvert point indholder flere punkter

for (int i = 0; i < SetRoute.Count; i++)
            {
                string str = "";
                string strload = "";

                foreach (double load in (ArrayList)LoadRoute[i])
                {
                    strload = strload + " " + load.ToString();

                }

              foreach (int point in (ArrayList)SetRoute[i])
                {
                    str = str + "-" + point.ToString();
                   
                }

og derfor ved jeg ikke hvordan jeg får count af  (ArrayList)SetRoute[i])
Avatar billede arne_v Ekspert
30. juli 2012 - 15:50 #4
((ArrayList)SetRoute[i])).Count

boer virke
Avatar billede juks Novice
30. juli 2012 - 19:41 #5
takker..
Avatar billede arne_v Ekspert
30. juli 2012 - 20:49 #6
saa smider jeg et svar
Avatar billede naansoft Nybegynder
31. juli 2012 - 10:24 #7
Blot en kommentar: Et dictionary ville have været en del bedre.
Avatar billede juks Novice
31. juli 2012 - 21:25 #8
naansoft kan du forklare hvorfor ?
Avatar billede naansoft Nybegynder
01. august 2012 - 10:17 #9
Det hele afhænger af hvordan dine emner i din liste er opbygget, og så også om der er dynamik i din liste.

Hvis der er tale om simple emner (f.eks. en række tal) i en statisk liste, så kan jeg ikke se noget problem i at anvende et array:

int[] numbers = new int[5] {10, 20, 30, 40, 50};
var a = numbers[3] + numbers[4];

Men et array kan ikke nemt udvides, og kan være træls på mange måder. Derfor foretrækker jeg ofte et dictionary:

Dictionary<int, int> numbers = new Dictionary<int, int>();
numbers.add(a,10); numbers.add(a,20); numbers.add(a,30); numbers.add(a,40); numbers.add(a,50);
var a = numbers[3] + numbers[4];

Tag et kig på http://www.dotnetperls.com/dictionary for ideer!
Avatar billede naansoft Nybegynder
01. august 2012 - 10:18 #10
Lille bøf: Jeg skrev numbers.add(a,10); osv - der skulle have stået numbers.add(1,10); numbers.add(2,20); ... numbers.add(5,50);
Sorry...
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