//MySort.java  --- sample using java.util.Arrays.sort( )
// @CopyLeft by tsaiwn@cs.nctu.edu.tw
// Modified by xxxxyyyy(你的學號姓名)  ! 注意至少加入三個整數五個實數!!
import java.applet.*;
import java.util.*;
import java.io.*;
public class MySort extends Applet {
    static java.io.PrintStream cout=System.out;
    public static final String myName="你的學號姓名";
    public static void main(String argv[ ]) {
       MySort me = new MySort( );
       me.init( ); me.start( );
       me.test( );
       cout.println("Thank you and Bye!\nThe program:");
       new MySort( ); // to print myself
    }//main(
    MySort( ) {
        new PrintMe( getClass( ) );
    }//
    void test( ) {
       cout.println("Test sorting...modified by " + myName);
       cout.println("Before sort Array a:");
       printAry(a);
       java.util.Arrays.sort(a);    // 可以寫全名
       cout.println("After sort:");
       printAry(a);
       reverse(a);
       cout.println("After Reverse it:");
        printAry(a);
      ////// 測試 sort 實數陣列(double array)
       cout.println("======\nBefore sort Array b:");
       printAry(b);
       Arrays.sort(b);   // 這樣也可以, 因為已經有 import java.util.*;
       cout.println("After sort:");
       printAry(b);
       // cout.println("After Reverse it:");
       // reverse(b);   // 須再寫一個  void reverse(double 陣列) { }
       // cout.println("After Reverse it:");
    }// test(
 ////// template function 無法用於 基礎型別的陣列(Primitive Array)
    void printAry(int y[ ]) {
       for(int x: y) {   // 陣列 y[ ] 中每個 x
          cout.print(" "+x);
       }//for
       cout.println( );  // 換一列   NewLine
    }// printAry(
    void printAry(double y[ ]) {
       for(double x: y) {   // 陣列 y[ ] 中每個 x
          cout.print(" "+x);
       }//for
       cout.println( );  // 換一列   NewLine
    }// printAry(
    void reverse(int x[ ]) {
        int i=0, k = x.length - 1;
        int tmp;
        for( ;; ) {
            if(i >= k) return;
            tmp=x[i]; x[i]=x[k]; x[k]=tmp;
            i++; --k;
        }// for
    }//
    // 須再寫一個  void reverse(double 陣列) { }
    int a[ ] = { 33, 88, 55, 66, 123, 99, 22, 77};
    double b[ ] = { 38.49, 55.66, 66.5, 25
        , 168, 99.5, 85.25, 13.38, 77.5};
} // class
/******
D:\jtest> path "c:\Program Files\Java\jdk1.6.0_23\bin";%path%

D:\jtest> javac MySort.java

D:\jtest> java MySort
Test sorting...modified by 你的學號姓名
Before sort Array a:
 33 88 55 66 123 99 22 77
After sort:
 22 33 55 66 77 88 99 123
After Reverse it:
 123 99 88 77 66 55 33 22
======
Before sort Array b:
 38.49 55.66 66.5 25.0 168.0 99.5 85.25 13.38 77.5
After sort:
 13.38 25.0 38.49 55.66 66.5 77.5 85.25 99.5 168.0
Thank you and Bye!
The program:

D:\jtest>
******/
