import java.io.PrintWriter; import java.io.FileWriter; /** * A simple output system for beginning programmers. Permits * writing of basic data types without delving into the workings * of the various Java libraries. Using this library makes it * easier to change programs to do output to a file (hopefully) and * for students to extend the class by adding new routines. * * While it would be preferable to have this class extend * PrintWriter, this makes it difficult to make it work with files * (at least in my experience). * * Note that this class does not precisely match the description * in the text. The one described in the text is designed to be * somewhat more understandable for beginning programmers. * * Requires Java 1.1 or later. * * @author Samuel A. Rebelsky * @version 1.5 of January 1999 */ public class SimpleOutput { // +--------+------------------------------------------------------------ // | Fields | // +--------+ /** The base Writer used for doing the actual output. */ protected PrintWriter base; // +--------------+------------------------------------------------------ // | Constructors | // +--------------+ /** * Build an object that can write to standard output. */ public SimpleOutput() { // Use System.out, converting it as appropriate. base = new PrintWriter(System.out, true); } // SimpleOutput // +------------+-------------------------------------------------------- // | Finalizers | // +------------+ // +------------------+-------------------------------------------------- // | Exported Methods | // +------------------+ /** * Print a boolean (truth) value. */ public void print(boolean b) { base.print(b); } // print(boolean) /** * Print a character value. */ public void print(char c) { base.print(c); } // print(char) /** * Print a double value. */ public void print(double d) { base.print(d); } // print(double) /** * Print an integer value. */ public void print(int i) { base.print(i); } // print(int) /** * Print a long value. */ public void print(long l) { base.print(l); } // print(long) /** * Print a float value. */ public void print(float f) { base.print(f); } // print(float) /** * Print an object. */ public void print(Object o) { this.print(o.toString()); } // print(Object) /** * Print a string value. */ public void print(String s) { base.print(s); base.flush(); } // print(String) /** * Print a carriage return. */ public void println() { base.println(); } //println /** * Print a boolean (truth) value followed by a carriage return */ public void println(boolean b) { base.println(b); } // println(boolean) /** * Print a character value followed by a carriage return. */ public void println(char c) { base.println(c); } // println(char) /** * Print a double value followed by a carriage return. */ public void println(double d) { base.println(d); } // println(double) /** * Print an integer value followed by a carriage return. */ public void println(int i) { base.println(i); } // println(int) /** * Print a long value followed by a carriage return. */ public void println(long l) { base.println(l); } // println(long) /** * Print a float value followed by a carriage return. public void println(float f) { base.println(f); } // println(float) /** * Print an object followed by a carriage return. */ public void println(Object o) { this.println(o.toString()); } // println(Object) /** * Print a string value followed by a carriage return. */ public void println(String s) { base.println(s); } // println(String) } // SimpleOutput