import hlt.language.util.ArrayList;
//import java.util.ArrayList;

public class ArrayListTest
{
  // this will not work with java.util.ArrayList (method does not exist):
  final public static void secureSetting ()
  {
    System.out.println("------------------------------------------------------------------------");
    System.out.println("SECURE SETTING TEST:\n");

    ArrayList a = new ArrayList(20);

    a.add("0");
    a.add("1");
    a.add("2");
    System.out.println("size = "+a.size());
    a.secureSet(8,"8");
    a.secureSet(9,"9");
    System.out.println("size = "+a.size());
    a.secureSet(99,"99");
    System.out.println("size = "+a.size());
  }

  final public static void insecureSetting ()
  {
    System.out.println("------------------------------------------------------------------------");
    System.out.println("INSECURE SETTING TEST:\n");

    ArrayList a = new ArrayList(20);

    a.add("0");
    a.add("1");
    a.add("2");
    System.out.println("size = "+a.size());
    // a.ensureCapacity(15);
    // java.util.ArrayList bug: the following gives an out-of-bound exception
    // even though the initial capacity is 20 whether or not ensureCapacity(15)
    // was called!!!
    a.set(8,"8");
    a.set(9,"9");
    System.out.println("size = "+a.size());
    // a.ensureCapacity(100);	// must be 1 plus the index we wish to set:
    a.set(99,"99");
    System.out.println("size = "+a.size());
  }

  final public static void main (String args[])
  {
    secureSetting();
    insecureSetting();
  }

}