These smartphones don't have great battery life, especially if you have a lot of it's functions turned on.
If you don't need the 3g/Wireless internet access function always on, turn the antennas off by going to 'Settings', then 'Wireless and Networks'. Uncheck the boxes for 'WiFi' and 'Bluetooth' if you're not using them. In 'Mobile Netwoks' turn off 3G if not needed.
Go into 'Settings'. Then 'Location & Security'. Are your "Use Wireless Networks" and "Use GPS Sattelites" boxes 'ticked' on? If they are, de-select them. Those will suck your battery's juice, they're only needed when you're using google maps/navigation and some other apps.
Also, go to 'Settings', then "Accounts and Sync'. Uncheck the boxes for "Background Data' and 'Auto-Sync', these also drain the battery. These need to be checked if you want your phone to 'notify' you that you just received a new gmail email.
If you want to have sync and background data, gps and location always on during your day, then get that double-size battery that Phatninja55 described above. I bought 2 extra regular batteries from Amazon for $15 delivered, less convienent than the double sized battery, but cheaper.
Also, in 'Settings', 'Applications', you can 'Force Stop' apps that you aren't currently using, that will save battery too.
2/16/2012: I would also suggest getting these free apps from the Playstore. Android Assistant+18 by Aaron, File Manager by Rhmsoft, Clean Master, and if your device is rooted, DroidWall.
Android Assistant has a lot of useful tools including an app backup and app to SD card utility.
File Manager is a very good app with no time limit like some other free file managers have.
DroidWall (for rooted devices only) is a nice little 'firewall' app that does not have any 'permissions. It lets you "whitelist/deny" internet access for any installed app. Works great! Especially useful for people who have limited data plans.
Clean Master cleans up caches and old unused data from your device.