package username.tests; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.util.Vector; import username.linear.Stack; import username.linear.ArrayBasedStack; /** * A simple test of stacks. Prints stuff in reverse order. * * @author Samuel A. Rebelsky * @version 1.0 of April 2006. */ public class TestStack { public static void main(String[] args) throws Exception { PrintWriter pen = new PrintWriter(System.out, true); BufferedReader eyes = new BufferedReader(new InputStreamReader(System.in)); Vector lines = new Vector(); pen.println("Please enter some text, one line at a time. End with a blank line."); String line; do { pen.print("> "); pen.flush(); line = eyes.readLine(); if (!line.equals("")) { lines.add(line); } } while (!line.equals("")); pen.println("ORIGINAL"); pen.println(lines); reverse(lines); pen.println("REVERSED"); pen.println(lines); } // main(String[]) static void reverse(Vector v) { Stack s = new ArrayBasedStack(); for (int i = 0; i < v.size(); i++) { s.put(v.get(i)); } // for for (int i = 0; i < v.size(); i++) { v.set(i, s.get()); } // for } // reverse(Vector) } // class TestStack