import java.util.ArrayList;
import java.util.Random;
import java.util.Date;
import java.util.Collections;

public class RandomSortApp
{
   public static void main(String[] args)
   {
      Random randomGen = new Random();
      ArrayList liste = new ArrayList(1000000);

      // Liste mit Zufallszahlen füllen
      System.out.println("Fuellen: " + new Date().toString());
      for (int i=0; i < 1000000;i++)
      {
         int j = randomGen.nextInt(Integer.MAX_VALUE);
         liste.add(new Integer(j));
      }
      System.out.println("bis: " + new Date().toString());

      // Liste sortieren
      System.out.println("Sortieren: " + new Date().toString());
      Collections.sort(liste);
      System.out.println("bis: " + new Date().toString());

      // Sortierung umdrehen
      System.out.println("Umkehren: " + new Date().toString());
      Collections.reverse(liste);
      System.out.println("bis: " + new Date().toString());

      // einen Teil der Liste ausgeben
      for (int i=10000; i < 10200;i++)
      {
         System.out.println(liste.get(i));
      }
   }
}