Verkar inte vara alltför het tråd, vore tacksam om någon kunde hjälpa!
Jag har försökt hitta ett annat sätt att lösa mitt problem, och jag undrar:
Hur tar jag reda på hur många av mina arrays element som har blivit tilldelade ett värde?
Testade med array.Length och Count men det visade bara hur många element jag tilldelat min array.
Jag har löst det genom en for-loop, men det måste väl finnas en bättre lösning?
Och så undrar jag, hur tilldelar jag en jagged array värden i en loop från variabler?
int[][] utfall = new int[18][];
for(villkor) {
utfall[antal] = new int[5];
utfall[antal][a] = 1;
}
Du får nesta loops för det, en som loopar index i huvudarrayen och en som loopar arrayerna den håller i.
// Loopa din jagged array.
for (int i = 0; i < arr.Length; i++)
{
// Skapa upp en ny array på index i, ge den längd.
arr[i] = new int[4];
for (int j = 0; j < arr[i].Length; j++)
{
// Sätt värden i den nya arrayen.
arr[i][j] = värde
}
}
Med tilldelade värde, menar du att resterande är null innan de fått värden eller är det ints så värden är 0?
Om du inte orkar hålla på med for-loops så skulle du kunna använda LINQ.
Nu gör jag detta direkt här i forumet, så har inte testat det. Men bör fungera, annars får jag skapa upp ett test projekt, sjukt länge sen jag rörde någon multidimensionell array
I detta exempel utgår jag från att du har en array med ints och där tomma värden är 0.
var nonEmptyElements =
(from a in array
from inner_a in a
where inner_a != 0 // (alternativ != null)
select inner_a).Count();