Java is more of a roll-your-own language. For instance, how would you like a way to have output printed with column widths of 12 (or whatever you choose) and rounded to exactly three places after the decimal point (or however many decimal places you choose)? Is the following coding simple enough to use? ColumnFormatter cout = new ColumnFormatter (12, "0.00"); cout.println (someDecimalValue); cout.println (anotherNumber); If that is what you want, the following class gives it to you. I developed it in 10 minutes from Cay Horstmann's suggestion. Consequently, it does not have the protections against invalid parameters that it should have, and it does not have nearly enough functionality (print() would be great for several columns in one line). This is on purpose, so you can fix it up. Students could spend hours doing it, which is how they learn object-oriented programming. Bill public class ColumnFormatter { private java.text.DecimalFormat itsFormat; private int itsColumnWidth; private static String BLANKS = " "; public ColumnFormatter (int columnWidth, String format) { itsFormat = new java.text.DecimalFormat (format); itsColumnWidth = columnWidth; } public String format (double givenValue) { String s = itsFormat.format (givenValue); return BLANKS.substring (0, itsColumnWidth - s.length()) + s; } public void println (double givenValue) { System.out.println (format (givenValue)); } }