/*
* OutputTest.java
*
* Created on June 1, 2004, 12:31 PM
*/
//comment the package line out to run in the default package.
import java.math.BigInteger;
import java.util.Calendar;
import java.util.Date;
/**
*
* @author cpresser
*/
public class OutputTest {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// Set up some variables with different types of data.
String word = "Information";
int integer = 24;
double real = 12*Math.PI;
BigInteger bigInt = new BigInteger("123456789012345678901234567890123456789012345678901234567890");
Date today = Calendar.getInstance().getTime();
//a series of output statements to show some of the functionality of the printf method.
//The comments below indicate the output from each section:
System.out.printf("String output tests:\n");
System.out.printf("A string-------------------------------|%s|\n", word);
System.out.printf("An upper-case string-------------------|%^s|\n", word);
System.out.printf("A string in 15 spaces------------------|%15s|\n", word);
System.out.printf("A string left justified in 15 spaces---|%-15s|\n", word);
System.out.printf("A string within 5 characters-----------|%.5s|\n", word);
System.out.printf("A string in a space of 5 to 7 chars----|%5.7s|\n", word);
System.out.printf("\n");
/* OUTPUT:
String output tests:
A string-------------------------------|Information|
An upper-case string-------------------|INFORMATION|
A string in 15 spaces------------------| Information|
A string left justified in 15 spaces---|Information |
A string within 5 characters-----------|Infor|
A string in a space of 5 to 7 chars----|Informa|
*/
System.out.printf("Integer output tests:\n");
System.out.printf("An integer-----------------------------|%d|\n", integer);
System.out.printf("An integer as an octal-----------------|%o|\n", integer);
System.out.printf("An integer as hex----------------------|%x|\n", integer);
System.out.printf("\n");
/* OUTPUT:
Integer output tests:
An integer-----------------------------|24|
An integer as an octal-----------------|30|
An integer as hex----------------------|18|
*/
System.out.printf("Double output tests:\n");
System.out.printf("A double-------------------------------|%f|\n", real);
System.out.printf("A double in scientific notation--------|%e|\n", real);
System.out.printf("A double with precision of 2-----------|%.2f|\n", real);
System.out.printf("A double with precision of 10----------|%.10f|\n", real);
System.out.printf("A double as a hex number---------------|%a|\n", real);
System.out.printf("\n");
/* OUTPUT:
Double output tests:
A double-------------------------------|37.699112|
A double in scientific notation--------|3.769911e+01|
A double with precision of 2-----------|37.70|
A double with precision of 10----------|37.6991118431|
A double as a hex number---------------|0x1.2d97c7f3321d2p5|
*/
System.out.printf("BigInteger output test:\n");
System.out.printf("A BigInteger---------------------------|%d|\n", bigInt);
System.out.printf("\n");
/* OUTPUT:
BigInteger output test:
A BigInteger---------------------------|123456789012345678901234567890123456789012345678901234567890|
*
*/
System.out.printf("Date output tests:\n"); //see multiple arguments section for others
System.out.printf("A Date object as a string--------------|%s|\n", today);
System.out.printf("A formatted Date object----------------|%tc|\n", today);
System.out.printf("An ISO8602 format Date object----------|%tF|\n", today);
System.out.printf("Time in 12 hour format ----------------|%tr|\n", today);
System.out.printf("Time in 24 hour format-----------------|%tR|\n", today);
System.out.printf("Time in 24 hour format w/ seconds -----|%tT|\n", today);
System.out.printf("Date-----------------------------------|%tD|\n", today);
System.out.printf("\n");
/* OUTPUT:
Date output tests:
A Date object as a string--------------|Tue Jun 01 15:25:41 EDT 2004|
A formatted Date object----------------|Tue Jun 01 15:25:41 EDT 2004|
An ISO8602 format Date object----------|2004-06-01|
Time in 12 hour format ----------------|03:25:41 PM|
Time in 24 hour format-----------------|15:25|
Time in 24 hour format w/ seconds -----|15:25:41|
Date-----------------------------------|06/01/04|
*
*/
System.out.printf("Multiple Argument tests:\n");
System.out.printf("%1$s %2$d, %1$s %3$d, %1$s %4$d\n", "label", 1, 2, 3);
System.out.printf("Date mmddyyyy--------------------------|%1$tm%1$td%1$tY|\n", today);
/* OUTPUT:
Multiple Argument tests:
label 1, label 2, label 3
Date mmddyyyy--------------------------|06012004|
*
*/
//There are many other formats/conversions see java.util.Formatter for details
}
}