It's roughly correct.
TRUNCATE can be used on a single partition too (if you have a partitioned table). And since it is a DDL operation, it doesn't need to generate any undo, which makes it a very fast operation even for tables containing millions of rows.
Since Oracle 10, it is possible to undo a DROP TABLE statement (not TRUNCATE though). If you're interested, see
Oracle Flashback Technology.