From comments.
OP had declared the array but had not created new instances of the object when populating it.
Something similar to this was needed:
rounds[round][match] = new Game;
rounds[round][match].team1= team1;
rounds[round][match].team2 = team2;