Avatar billede gulbaek Nybegynder
29. september 2004 - 20:40 Der er 8 kommentarer og
1 løsning

Opdatere data i et 2D array

Har oprettet et array på følgende måde

private int[][] data = new int[4][];

Længere nede i koden har jeg en metode der skal opdatere dataen.
kan f.eks. se sådan ud.

data[0][0] += 1;

Men det giver mig følgende fejl.
Object reference not set to an instance of an object

Gætter på det er fordi mit array er tom på det tidspunkt jeg forsøger at smide noget ind i det.
Avatar billede arne_v Ekspert
29. september 2004 - 20:43 #1
private int[][] data = new int[4][];
data[0] = new int[1]; // <----
data[0][0] += 1;
Avatar billede arne_v Ekspert
29. september 2004 - 20:44 #2
int[][] er et array af arrays af int
Avatar billede gulbaek Nybegynder
29. september 2004 - 20:51 #3
okay, så hvis jeg vil have mit array til at bestå af 4 X 4 pladser, så skal jeg skrive det på følgende måde.

private int[][] data = new int[4][];
data[0] = new int[4];
data[1] = new int[4];
data[2] = new int[4];
data[3] = new int[4];
Avatar billede arne_v Ekspert
29. september 2004 - 20:53 #4
Det er en mulighed.

En anden mulighed er:

private int[,] data = new int[4,4];
Avatar billede arne_v Ekspert
29. september 2004 - 20:54 #5
Det sidste er er ægte 2D array. Hvor det første som sagt er et array af arrays.
Avatar billede gulbaek Nybegynder
29. september 2004 - 20:56 #6
Tror jeg holder mig til dit sidste forslag, det er også lidt mere simpelt og ser ud til at virke fint, takker smid lige et svar.
Avatar billede arne_v Ekspert
29. september 2004 - 20:58 #7
svar
Avatar billede arne_v Ekspert
29. september 2004 - 20:59 #8
Det første er mest sjov hvis arraysene ikke er lige lange.

private int[][] data = new int[4][];
data[0] = new int[1];
data[1] = new int[2];
data[2] = new int[3];
data[3] = new int[4];
Avatar billede gulbaek Nybegynder
29. september 2004 - 21:00 #9
nu ved jeg heldigvis at de altid vil være lige lange, det næste jeg skal igang med er så at vise det pænt i en applikation, men det er et helt nyt spørgsmål :-)
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