Well, you could do it that way, or just have a new method called, which populates the world/level as you want, and every time it reaches the end of that level, it calls a new method. You could keep track of certain things like life, time, when an actor is in a certain place, and if those conditions are met, it loads a method that populates the world in a new way.
Or just write new world classes, and switch between them with this line of code... Greenfoot.setWorld(new Level2());
where level2 is the name of the new level you want to switch to.
also you can check this link out... Level Tutorial in Greenfoot