public static void main(String[] args) {
ArrayList<ArrayList<Integer>> outer = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> inner = new ArrayList<Integer>();
inner.add(100);
inner.add(200);
outer.add(inner); // add first list
inner = new ArrayList<Integer>(inner); // create a new inner list that has the same content as
// the original inner list
outer.add(inner); // add second list
outer.get(0).add(300); // changes only the first inner list
System.out.println(outer);
}
//Requires
import java.util.ArrayList;
// ArrayList<Data_Type> name = new ArrayList<DataType>(Initial_Capacity);
// for Eg :- If Data Type is int (Use it's wrapper class i.e, Integer)
ArrayList<Integer> anything = new ArrayList<Integer>();
// ArrayList is not initialized with zeroes like an array
import java.util.ArrayList;
ArrayList<Integer> myList = new ArrayList<Integer>();
myList.add(0);
myList.remove(0);//Remove at index 0
myList.size();
myList.get(0);//Return element at index 0
// Create
String[] myArray = {"A", "B", "C"};
// constructor no.3, passing a collection
List<String> myArrayList = new ArrayList<>(Arrays.asList("A", "B", "C"));
// Get element
String i = myArray[1];
String j = myArrayList.get(1);
// Get size
int k = myArray.length; // length is a public field in array, not method.
int l = myArrayList.size();
// Add an element, you can't that w/ array as it is fixed in length
myArrayList.add("D");
// Set an element
myArray[0] = "E";
myArrayList.set(0, "E");
// Remove an element, can't w/ array b/c fixed length
myArrayList.remove(2); // remove by index
myArrayList.remove("E"); // remove by object
public static void main(String[] args) {
ArrayList<ArrayList<Integer>> outer = new ArrayList<ArrayList<Integer>>();
ArrayList<Integer> inner = new ArrayList<Integer>();
inner.add(100);
inner.add(200);
outer.add(inner); // add first list
inner = new ArrayList<Integer>(inner); // create a new inner list that has the same content as
// the original inner list
outer.add(inner); // add second list
outer.get(0).add(300); // changes only the first inner list
System.out.println(outer);
}
// Java code to demonstrate the concept of
// array of ArrayList
import java.util.*;
public class Arraylist {
public static void main(String[] args)
{
int n = 5;
// Here al is an array of arraylist having
// n number of rows.The number of columns on
// each row depends on the user.
// al[i].size() will give the size of the
// i'th row
ArrayList<Integer>[] al = new ArrayList[n];
// initializing
for (int i = 0; i < n; i++) {
al[i] = new ArrayList<Integer>();
}
// We can add any number of columns to each
// rows as per our wish
al[0].add(1);
al[0].add(2);
al[1].add(5);
al[2].add(10);
al[2].add(20);
al[2].add(30);
al[3].add(56);
al[4].add(34);
al[4].add(67);
al[4].add(89);
al[4].add(12);
for (int i = 0; i < n; i++) {
for (int j = 0; j < al[i].size(); j++) {
System.out.print(al[i].get(j) + " ");
}
System.out.println();
}
}
}
//ArrayList
ArrayList is a part of collection framework and is present in java.util package. It provides us dynamic arrays in Java. Though, it may be slower than standard arrays but can be helpful in programs where lots of manipulation in the array is needed.
ArrayList inherits AbstractList class and implements List interface.
ArrayList is initialized by a size, however the size can increase if collection grows or shrunk if objects are removed from the collection.
Java ArrayList allows us to randomly access the list.
ArrayList can not be used for primitive types, like int, char, etc. We need a wrapper class for such cases.
Code to create a generic integer ArrayList :
ArrayList<Integer> arrli = new ArrayList<Integer>();