How many collection classes are there in java with example

Elijah 135 Published: 11/02/2024

How many collection classes are there in java with example

I'm happy to help you with that!

Java has five built-in collection classes: List, Set, Map, Queue, and Deque.

List: A list is an ordered collection of objects where duplicate values can exist. It allows the insertion and removal of elements at any position in the list. There are two main types of lists: ArrayList: This class represents a resizable-array based implementation of the List interface. Objects of the type specified when the ArrayList was created, must be stored in the list.
    import java.util.ArrayList;

public class Main {

public static void main(String[] args) {

ArrayList fruits = new ArrayList<>();

fruits.add("Apple");

fruits.add("Banana");

fruits.add("Orange");

System.out.println(fruits); // [Apple, Banana, Orange]

}

}

Set: A set is an unordered collection of objects where duplicate values can't exist. It does not allow the insertion or removal of elements. HashSet: This class represents a set (i.e., no duplicates) of objects in which each object is unique.
    import java.util.HashSet;

public class Main {

public static void main(String[] args) {

HashSet fruits = new HashSet<>();

fruits.add("Apple");

fruits.add("Banana");

fruits.add("Apple"); // This won't be added as the set doesn't allow duplicates.

System.out.println(fruits); // [Apple, Banana]

}

}

Map: A map is an unordered collection of key-value pairs where each key is unique. HashMap: This class represents a hash table-based implementation of the Map interface.
    import java.util.HashMap;

public class Main {

public static void main(String[] args) {

HashMap<String, Integer> fruits = new HashMap<>();

fruits.put("Apple", 1);

fruits.put("Banana", 2);

System.out.println(fruits); // {Apple=1, Banana=2}

}

}

Queue: A queue is a First-In-First-Out (FIFO) collection. LinkedListQueue: This class represents a linked-list-based implementation of the Queue interface.
    import java.util.LinkedList;

public class Main {

public static void main(String[] args) {

LinkedList fruits = new LinkedList<>();

fruits.add("Apple");

fruits.add("Banana");

System.out.println(fruits.poll()); // Apple

}

}

Deque: A deque is a Double-Ended Queue, meaning you can add or remove elements from both ends. LinkedListDeque: This class represents a linked-list-based implementation of the Deque interface.
    import java.util.LinkedList;

public class Main {

public static void main(String[] args) {

LinkedList fruits = new LinkedList<>();

fruits.add("Apple");

fruits.add("Banana");

System.out.println(fruits.removeFirst()); // Apple

}

}

Remember, Java has many other collection classes and interfaces available as well.

How many collection classes are there in java javatpoint

I'd be happy to help you with that!

In Java, there are four types of collection classes: List, Set, Map, and Queue.

List: A list is an ordered collection of objects. It allows duplicate values, and the order in which elements were added is preserved. There are two main implementations of the List interface: ArrayList and LinkedList. The difference between them lies in their underlying data structure:

ArrayList: A resizable array-based implementation. It is faster for reading operations and slower for writing operations.

LinkedList: A sequential access-based implementation, where each element points to the next one. It is faster for writing operations and slower for reading operations.

Set: A set is an unordered collection of objects. It does not allow duplicate values, and the order in which elements were added is not preserved. The Set interface has two main implementations: HashSet and TreeSet. The difference between them lies in their underlying data structure:

HashSet: A hash-based implementation, where each element is associated with a unique index called its "hash code". TreeSet: A NavigableMap-based implementation that provides a total ordering of the elements based on their natural order.

Map: A map is an unordered collection of key-value pairs. It does not allow duplicate keys, but it can have duplicate values. The Map interface has two main implementations: HashMap and TreeMap. The difference between them lies in their underlying data structure:

HashMap: A hash-based implementation where each element is associated with a unique index called its "hash code". TreeMap: A Red-Black tree-based implementation that provides a total ordering of the elements based on their natural order.

Queue: A queue is a first-in, first-out (FIFO) collection class. It does not allow duplicate values, and the order in which elements were added is preserved. The Queue interface has two main implementations: LinkedList and PriorityQueue. The difference between them lies in their underlying data structure:

LinkedList: A sequential access-based implementation. PriorityQueue: A priority-based implementation where elements are ordered based on their natural ordering.

These four types of collection classes provide a range of ways to store, manipulate, and retrieve collections of objects in Java.

In addition to these core interfaces, there are many other specialized collection classes, such as:

ArrayList: An extension of the List interface that provides dynamic resizing. LinkedList: An implementation of the List and Queue interfaces that uses a linked list data structure. HashSet: An implementation of the Set interface that uses a hash table data structure. TreeSet: An implementation of the Set interface that uses a tree-based data structure. HashMap: An implementation of the Map interface that uses a hash table data structure. TreeMap: An implementation of the Map interface that uses a tree-based data structure.

Each of these collection classes has its own strengths and weaknesses, and the choice of which one to use depends on the specific requirements of your application.