If you wash the walls with TSP or vinegar and water you will not need a primer to change subtle colors, but going to a different color you will need to apply more than one coat of paint. I have the best luck with three coats of paint. Primer is required on bare drywall/plaster/paneling, or if you need to do any sanding of the walls. In the latter case you would prime then sand the primer. Primer is nice because it bonds better, drys faster, covers better (higher solid pigment content), and is sandable. If you do not need these features, you do not need primer.
BIG TIP: Do not use cheap paint. The colors aren't as nice, the surface will not be as even, and cheap paint is much harder to work with. You will cost yourself 2x the headaches to save a little cash. Benjamin Moore, or Pratt & Lambert are my ONLY recommendations.