/*************************************************************************
* Name:
* NetID:
* Precept:
*
* Description: Shows off two ways to reverse an array and what happens
* after each.
*
* Dependencies: StdOut.java
*
* Example:
* % java Reverse Alice Bob Carol Dave
* args[]
* ---------------------------------------
* Alice
* Bob
* Carol
* Dave
*
* Array returned by reverse1(args)
* ---------------------------------------
* Dave
* Carol
* Bob
* Alice
*
* args[] did not change
* ---------------------------------------
* Alice
* Bob
* Carol
* Dave
*
* args[] after calling reverse2(args)
* ---------------------------------------
* Dave
* Carol
* Bob
* Alice (This is booksite Web Exercise 2.1.35.)
*************************************************************************/
public class Reverse {
// TO DO: Write a method reverse1() that takes a String array as an argument,
// and returns a new String array which holds the reverse of the argument array.
// DO NOT ALTER the original array.
// return a reversed copy of the original String array
public static _________ reverse1(__________________________________) {
}
// TO DO: Use the code from page 89 or Booksite Ex.1.4.4 to write a function
// reverse2() to reverse the elements in a String array. The array is an
// argument of the method. The method does not return anything. It reverses
// the original array.
// reverse the argument array
public static ________ reverse2(_______________________________) {
}
// print the entries in the array a[] to standard output
public static void show(String[] a) {
for (int i = 0; i < a.length; i++) {
StdOut.println(a[i]);
}
}
public static void main(String[] args) {
// original array
StdOut.println("args[]");
StdOut.println("---------------------------------------");
show(args);
StdOut.println();
// create a new array that is the reverse of args[]
StdOut.println("Array returned by reverse1(args)");
StdOut.println("---------------------------------------");
String[] reverse = reverse1(args);
show(reverse);
StdOut.println();
// args[] did not change
StdOut.println("args[] did not change");
StdOut.println("---------------------------------------");
show(args);
StdOut.println();
// args[] after calling reverse2(args)
StdOut.println("args[] after calling reverse2(args)");
StdOut.println("---------------------------------------");
reverse2(args);
show(args);
StdOut.println();
}
}