# How do I create an array (8x8) of BitArrays (16 bits).

I awarded the points as the question was answered, the answer being:

BitArray[,] board = new BitArray[8, 8];
for (int i = 0; i < 8; i++)
{
for (int j = 0; j < 8; j++)
{
board[i, j] = new BitArray(16);
}
}

However, my question evolves.....what if I want the 8x8 Array to contain a Struct, so that each square on the board has an int colour and a 16 bitArray , and an int array [3]

LVL 1
###### Who is Participating?

Commented:
Define the struct as

``````struct Square
{
int colour;
BitArray bitArray;
int[] array;

public Square(int clr, BitArray bArr, int[] arr)
{
colour = clr;
bitArray = bArr;
array = arr;
}
}

You can initialize your array like this

Square[,] board = new Square[8, 8];
for (int i = 0; i < 8; i++)
{
for (int j = 0; j < 8; j++)
{
board[i, j] = new Square(0, new BitArray(16), new int[3]);
}
}
``````
0

Technical ManagerCommented:
why dont you create an array of structure which meets your requirement
0

Author Commented:
Thanks CuteBug,

board[3, 3].bitArray[0] = true;
board[2, 2].colour = 1;
board[1, 1].array[2] = 5

For completeness for other lost souls trying to fathom out Structs/arrays, all the above work
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.