Instead of
Player[PlayerCount] thePlayers;
you want
Player[] thePlayers = new Player[PlayerCount];
and
for(int i = 0; i < PlayerCount ; i++)
{
thePlayers[i] = new Player(i);
}
return thePlayers;
should return the array initialized with Player instances.
EDIT:
Do check out this table on wikipedia on naming conventions for java that is widely used.