Java Tutorials
Java Methods
Java Classes
Java File Handling
The ArrayList
class is a regenerative program, which can be found in the java.util
package.
The difference between a built-in array and ArrayList
in Java, is that the array size cannot be changed (if you want to add or remove elements to / from the list, you must create a new one). Although features can be added and removed from ArrayList
whenever you want. The syntax is also slightly different:
Create an ArrayList
object called cars that will store strings:
import java.util.ArrayList; // import the ArrayList class
ArrayList<String> cars = new ArrayList<String>(); // Create an ArrayList object
The ArrayList
section has many useful features. For example, to add elements to ArrayList
, use the add()
method:
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
System.out.println(cars);
}
}
To access an item in ArrayList
, use the get()
method and refer to the reference number:
cars.get(0);
Note: Index lists start with 0: [0] first item. [1] The second element, etc.
To edit an element, use the set()
method and check the reference number:
cars.set(0, "Opel");
To delete an element, use the remove()
method and refer to the reference number:
cars.remove(0);
To delete all elements in ArrayList
, use the method clear()
:
cars.clear();
To find out how many elements ArrayList has, use the size
method:
cars.size();
Rotate ArrayList
objects with a for
loop, and use the size()
method to specify how often the loop should work:
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (int i = 0; i < cars.size(); i++) {
System.out.println(cars.get(i));
}
}
}
You can also log into ArrayList
for each loop:
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
for (String i : cars) {
System.out.println(i);
}
}
}
The elements in ArrayList are actually objects. In the examples above, we created elements (objects) of the "String" type. Remember that String in Java is an object (not an old version). To use other types, such as int, you must specify an equal wrapper category: Integer
. For other classic types, use: Boolean
boolean, Character
for Character, Double
for double, etc:
Create an ArrayList
to store numbers (add elements of type Integer
):
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(10);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(25);
for (int i : myNumbers) {
System.out.println(i);
}
}
}
Another useful class in the java.util
package is a collections
class, which includes a sort()
sorting list alphabetically or by numbers:
Sort an ArrayList of Strings:
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
cars.add("Volvo");
cars.add("BMW");
cars.add("Ford");
cars.add("Mazda");
Collections.sort(cars); // Sort cars
for (String i : cars) {
System.out.println(i);
}
}
}
Sort an ArrayList of Integers:
import java.util.ArrayList;
import java.util.Collections; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
myNumbers.add(33);
myNumbers.add(15);
myNumbers.add(20);
myNumbers.add(34);
myNumbers.add(8);
myNumbers.add(12);
Collections.sort(myNumbers); // Sort myNumbers
for (int i : myNumbers) {
System.out.println(i);
}
}
}