Array VS ArrayList Array A data storage setup for multiple values. Example: bunchOfMarks int [] bunchOfMarks = new int[10]; Declares variable space for 10 integers. To access any of them marks use [index]. You can then treat them like any other variable. Example: bunchOfMarks[3] = 68; Advantages: Super fast for the computer to access. Reasonably easy syntax to code with Disadvantage: Inflexible. You can't remove values or add extras later. In the case of bunchOfMarks there are exactly 10 student marks. No one can join the course or ever leave. The course is like eternal damnation technically speaking. ArrayList Flexible data storage. You can add and remove elements from the list whenever you want. No question asked. Example: ArrayList someNumbers = new ArrayList(); //Creates the list. At this time this list is empty. //Use add to add to the list. //The inde system is the same as for regular Arrays, 0 is the first, 1 the second and so on someNumbers.add(45); //0 someNumbers.add(55); //1 someNumbers.add(65); //2 println("Look at number at index 2 " + someNumbers.get(2)); To get the size of the arraylist (useful for for loops etc) someNumbers.size(); //This would return 3 as we added 3 numbers earlier FOR LOOPS for( initial count ; condition ; step ) Example for(int i=0; i < 10; i++){ println(i); } Will output 0,1,2,3,4,5,6,7,8,9 Starts at ZERO, only runs while the count is less than 10 and count up by 1's With an Array for(int i=0; i < myMarks.length; i++) println(myMarks[i]); With an ArrayList for(int i=0; i < myMarkList.size(); i++) println(myMarkList.get(i)); ============================= ASSIGNMENT Using 2 arrayLists store x values and y values Use add to store 3 values in each arraylist Use a for loop to draw boxes at the coordinates stored in those arrays NEXT DAY: 2 more arraylists for speedx and speedy Make the boxes bounce around.