corejava
Class Format

java.lang.Object
  |
  +--corejava.Format

public class Format
extends java.lang.Object

A class for formatting numbers that follows printf conventions. Also implements C-like atoi and atof functions


Constructor Summary
Format(java.lang.String s)
          Formats the number following printf conventions.
 
Method Summary
static double atof(java.lang.String s)
          Converts a string of digits to a double
static int atoi(java.lang.String s)
          Converts a string of digits (decimal, octal or hex) to an integer
static long atol(java.lang.String s)
          Converts a string of digits (decimal, octal or hex) to a long integer
 java.lang.String format(char c)
          Formats a character into a string (like sprintf in C)
 java.lang.String format(double x)
          Formats a double into a string (like sprintf in C)
 java.lang.String format(int x)
          Formats an integer into a string (like sprintf in C)
 java.lang.String format(long x)
          Formats a long integer into a string (like sprintf in C)
 java.lang.String format(java.lang.String s)
          Formats a string into a larger string (like sprintf in C)
static void main(java.lang.String[] a)
          a test stub for the format class
static void printf(java.lang.String fmt, char x)
          prints a formatted number following printf conventions
static void printf(java.lang.String fmt, double x)
          prints a formatted number following printf conventions
static void printf(java.lang.String fmt, int x)
          prints a formatted number following printf conventions
static void printf(java.lang.String fmt, long x)
          prints a formatted number following printf conventions
static void printf(java.lang.String fmt, java.lang.String x)
          prints a formatted number following printf conventions
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Format

public Format(java.lang.String s)
Formats the number following printf conventions. Main limitation: Can only handle one format parameter at a time Use multiple Format objects to format more than one number
Parameters:
s - the format string following printf conventions The string has a prefix, a format code and a suffix. The prefix and suffix become part of the formatted output. The format code directs the formatting of the (single) parameter to be formatted. The code has the following structure
  • a % (required)
  • a modifier (optional)
    +
    forces display of + for positive numbers
    0
    show leading zeroes
    -
    align left in the field
    space
    prepend a space in front of positive numbers
    #
    use "alternate" format. Add 0 or 0x for octal or hexadecimal numbers. Don't suppress trailing zeroes in general floating point format.
  • an integer denoting field width (optional)
  • a period followed by an integer denoting precision (optional)
  • a format descriptor (required)
    f
    floating point number in fixed format
    e, E
    floating point number in exponential notation (scientific format). The E format results in an uppercase E for the exponent (1.14130E+003), the e format in a lowercase e.
    g, G
    floating point number in general format (fixed format for small numbers, exponential format for large numbers). Trailing zeroes are suppressed. The G format results in an uppercase E for the exponent (if any), the g format in a lowercase e.
    d, i
    integer in decimal
    x
    integer in hexadecimal
    o
    integer in octal
    s
    string
    c
    character
Throws:
java.lang.IllegalArgumentException - if bad format
Method Detail

printf

public static void printf(java.lang.String fmt,
                          double x)
prints a formatted number following printf conventions
Parameters:
fmt - the format string
x - the double to print

printf

public static void printf(java.lang.String fmt,
                          int x)
prints a formatted number following printf conventions
Parameters:
fmt - the format string
x - the int to print

printf

public static void printf(java.lang.String fmt,
                          long x)
prints a formatted number following printf conventions
Parameters:
fmt - the format string
x - the long to print

printf

public static void printf(java.lang.String fmt,
                          char x)
prints a formatted number following printf conventions
Parameters:
fmt - the format string
x - the character to print

printf

public static void printf(java.lang.String fmt,
                          java.lang.String x)
prints a formatted number following printf conventions
Parameters:
fmt - the format string
x - a string to print

atoi

public static int atoi(java.lang.String s)
Converts a string of digits (decimal, octal or hex) to an integer
Parameters:
s - a string
Returns:
the numeric value of the prefix of s representing a base 10 integer

atol

public static long atol(java.lang.String s)
Converts a string of digits (decimal, octal or hex) to a long integer
Parameters:
s - a string
Returns:
the numeric value of the prefix of s representing a base 10 integer

atof

public static double atof(java.lang.String s)
Converts a string of digits to a double
Parameters:
s - a string

format

public java.lang.String format(double x)
Formats a double into a string (like sprintf in C)
Parameters:
x - the number to format
Returns:
the formatted string
Throws:
java.lang.IllegalArgumentException - if bad argument

format

public java.lang.String format(int x)
Formats an integer into a string (like sprintf in C)
Parameters:
x - the number to format
Returns:
the formatted string

format

public java.lang.String format(long x)
Formats a long integer into a string (like sprintf in C)
Parameters:
x - the number to format
Returns:
the formatted string

format

public java.lang.String format(char c)
Formats a character into a string (like sprintf in C)
Parameters:
x - the value to format
Returns:
the formatted string

format

public java.lang.String format(java.lang.String s)
Formats a string into a larger string (like sprintf in C)
Parameters:
x - the value to format
Returns:
the formatted string

main

public static void main(java.lang.String[] a)
a test stub for the format class