I have always had this one issue with arrays of ArrayLists. Maybe you can help.
//declare in class private ArrayList[] x; //in constructor x=new
I think you cannot make array of generic arraylist because no generic information will be available at runtime.Instead you can do like this:
List[] arr=new ArrayList[30]; arr[0]=new ArrayList();//create new arraylist for every index.