I am working on an assignment that has me, among other things, do this:

Add member variable of Data type ArrayList to represent the two teams of the game, then write method createTeams() that Instantiates the member variable of type ArrayList, and Instantiates two instances of class Team.

This is how I have done that:

```
private ArrayList<Team> Teams;

public void createTeams(){
    ArrayList<Team> TeamOne = new ArrayList<Team>();
    ArrayList<Team> TeamTwo = new ArrayList<Team>();
}

```

However, netbeans response to this has made me wonder, what are the differences between these three blocks of code?

```
ArrayList<Team> TeamOne = new ArrayList<Team>();

```

-

```
ArrayList<Team> TeamOne;

```

-

```
ArrayList<Team> TeamOne;
TeamOne = new ArrayList<>();

```