Java-Gaming.org Hi !
 Featured games (90) games approved by the League of Dukes Games in Showcase (741) Games in Android Showcase (225) games submitted by our members Games in WIP (823) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
Pages: [1]
 ignore  |  Print
 How to initalize a 2D array?  (Read 2096 times) 0 Members and 1 Guest are viewing this topic.
CyanPrime
 « Posted 2009-09-25 07:04:43 »

I'm trying to initalize a 2D array at creation. I know that for a single array you go:
 1 `int[] i = new int[]{0,1,2,3,4,5,6};`

but how do you do it for a 2D array? This is what I got so far:
 1  2  3  4  5  6  7  8  9  10 `    int[] i = new int[][]{{0,1,0,1,0,1,0,1,0,1},                     {1,0,1,0,1,0,1,0,1,0},                     {0,1,0,1,0,1,0,1,0,1},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0},                     {0,0,0,0,0,0,0,0,0,0}};`
steveyO
 « Reply #1 - Posted 2009-09-25 07:25:52 »

 1 `int i[][] = {{0,1,0,1,0,1,0,1,0,1},`

etc...

http://www.grafixator.com  2D Game Editor + Random Graphics Generator
JL235

JGO Coder

Medals: 10

 « Reply #2 - Posted 2009-09-25 07:49:25 »

It all looks correct to me, except with the bit:
 1 `int[] i = new int[][]`

I believe it should be:
 1 `int[][] i = new int[][]`

Stranger
 « Reply #3 - Posted 2009-09-25 11:10:44 »

Here is info about Java arrays.

Anton
ManaSink

Senior Newbie

 « Reply #4 - Posted 2009-09-25 14:24:08 »

Yeah.  That one trips up C/C++ guys all the time.  Keep in mind that arrays are objects, so the first dimension is an array of references.  Means an index can contain nulls or reference any int array, including ones of different lengths, or the same array.

lol, Stranger's link has it right in a couple of places, but shows the same mistake in the initializing arrays section.

 1  2  3 `int[] oneDim = new int[]{1,2,3};int[][] twoDim = new int[][]{{1,2,3},{4,5,6},{7,8,9}};int[][] weirdButLegal = new int[][]{null, oneDim, oneDim , twoDim[1],{7,8,9,10,11,12,13,14,15}};`

CyanPrime
 « Reply #5 - Posted 2009-09-25 16:50:11 »

Alright, thanks everyone! ^_^
rdcarvallo

Senior Devvie

Projects: 5
Exp: 15 years

2D Java games forever!

 « Reply #6 - Posted 2009-09-25 19:38:31 »

Only last year I got the idea of using the intermediate references in 2D arrays.

great solution for row swaping

 1  2  3  4  5 `void swap(int[][] a, int x, int y){  int[] t = a[x];  a[x] = a[y];  a[y] = t;}`

before understading this, I iterated the array, copying the values.
Pages: [1]
 ignore  |  Print

 Ecumene (110 views) 2017-09-30 02:57:34 theagentd (136 views) 2017-09-26 18:23:31 cybrmynd (245 views) 2017-08-02 12:28:51 cybrmynd (241 views) 2017-08-02 12:19:43 cybrmynd (240 views) 2017-08-02 12:18:09 Sralse (254 views) 2017-07-25 17:13:48 Archive (864 views) 2017-04-27 17:45:51 buddyBro (1008 views) 2017-04-05 03:38:00 CopyableCougar4 (1568 views) 2017-03-24 15:39:42 theagentd (1373 views) 2017-03-24 15:32:08
 KaiHH 30x princec 24x Slyth2727 15x SHC 11x Riven 11x philfrei 10x dime26 10x Spasi 9x cygnus 9x theagentd 8x h.pernpeintner 7x Mac70 7x EgonOlsen 6x nsigma 6x KevinWorkman 5x polinc 5x
 List of Learning Resourcesby elect2017-03-13 14:05:44List of Learning Resourcesby elect2017-03-13 14:04:45SF/X Librariesby philfrei2017-03-02 08:45:19SF/X Librariesby philfrei2017-03-02 08:44:05SF/X Librariesby SkyAphid2017-03-02 06:38:56SF/X Librariesby SkyAphid2017-03-02 06:38:32SF/X Librariesby SkyAphid2017-03-02 06:38:05SF/X Librariesby SkyAphid2017-03-02 06:37:51
 java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org