// Obtain NumberFormat and DateFormat objects to format our data.
NumberFormat number = NumberFormat.getInstance();
NumberFormat price = NumberFormat.getCurrencyInstance();
NumberFormat percent = NumberFormat.getPercentInstance();
DateFormat shortdate = DateFormat.getDateInstance(DateFormat.SHORT);
DateFormat fulldate = DateFormat.getDateTimeInstance(DateFormat.LONG,
DateFormat.LONG);
// Print some introductory data.
System.out.println("Portfolio value at " +
fulldate.format(lastQuoteTime) + ":");
System.out.println("Symbol\tShares\tBought On\tAt\t" +
"Quote\tChange");
// Then display the table using the format() methods of the Format objects.
for(int i = 0; i < positions.length; i++) {
System.out.print(positions[i].name + "\t");
System.out.print(number.format(positions[i].shares) + "\t");
System.out.print(shortdate.format(positions[i].purchased) + "\t");
System.out.print(price.format(positions[i].bought) + "\t");
System.out.print(price.format(positions[i].current) + "\t");
double change =
(positions[i].current - positions[i].bought)/positions[i].bought;
System.out.println(percent.format(change));
}