Skip to main content

Collection Interface - Java Collections Framework - DSA

Most people consider the collection as the root interface of Collections Framework and it is true to a great extent but another part of Collections Framework is Map Interface, we will see that later, Most Common methods which are applicable to all collections are defined in this interface for example add() to add an element, size() to get the size and much more, below is a table of most common methods.

Hierarchey of the Collection Interface.

The Parent of Collection Interface is Iterator Interface and the Collection is base class for List Interface, Set Interface and Queue Interface, the respective classes which impliments either of the sub classes will also implement the defined methods from the Collection Interface, below are some of the commonly used methods.

Defined Methods:


Method Description
add()

This method returns a Boolean value true if it inserts the specified element in this collection.

addAll()

This method returns a Boolean value true if all elements were added sucessfully.

clear()

Removes all the elements of the collection.

contains()

returns a Boolean value if the specified object exists true else false.

containsAll()

returns a Boolean value if the specified Objects from the argument of collection and if all the elements exist inside the collection then it returns true else false.

equals()

returns true if the specified Object is equal to this current Collection.

hashCode()

returns the hash code value of this collection.

isEmpty()

returns true if this collection has no elements otherwise returns false.

iterator()

returns an Iterator over the elements in proper sequence.

remove()

Removes the first element where the specified element is found, but only the 1st element of the specified object will be removed.

removeAll()

same like remove() but all objects matching will be removed from this collection.

removeIf()

It removes all the elements of this collection that satisfy the given predicate filter.

retainAll()

The Objects inside the arguments collection will be kept and all other Objects will be removed from this collection.

size()

This returns the number of objects present inside this collection.

spliterator()

It returns a spliterator over the elements in this collection.

toArray()

It returns an array containing all the elements of this collection which are in proper sequence.



Classes that implements Collection

ArrayList, LinkedList, Vector, Stack, PriorityQueue, ArrayDeque, TreeSet, HashSet, LinkedHashSet

Which means all the above methods in the table can be used from the objects of these classes which implements Collection interface, along with these diffrent collections have their own interfaces they implement depending on the underlaying collections.

Sample Code:


import java.util.*;
class TestJavaCollection1{
public static void main(String args[]){
ArrayList < String> list=new ArrayList < String>(); //Creating arraylist
list.add("Ravi");//Adding object in arraylist
list.add("Vijay");
list.add("Ravi");
list.add("Ajay");
//Traversing list through Iterator
Iterator itr=list.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
}
}

//output
Ravi
Vijay
Ravi
Ajay

Comments

Popular posts from this blog

Implementing In-app and pre-locale language selection in Android

Modern Android App Architecture One of the essential features for a globalized app is the ability to provide users with the option to choose their preferred language within the application. In this blog post, we will guide you through the process of implementing in-app language selection in an Android app. Step 1: Create Locale String Resource Create a string resource file for each respective locale by navigating to res > new > Android Resource File . Select Locale and create a string.xml file. Copy and paste the translations of your app content into these files. Step 2: Configure Locale Preferences In the res/xml folder, create a new file called locales_config.xml and specify the locales of your choice. for example look at the following code: <?xml version="1.0" encoding="utf-8"?> <locale-config xmlns:android="http://schemas.android.com/apk/res/android"> <locale andro...

Chocolate Feast - Problem Solving - Hacker Rank Solution.

The expectation is to find the total number of choclate one can consume by taking full advantage of the offer, Here there are 3 inputs n which holds the value of initial amount of money for buying choclate, c is the cost price of each candy if paid by cash and m is the exchange rate for the candy. Inputs n Initial cash to buy candy. c Coast of each candy if paid by cas.h m Exchange rate for a new candy in offer. The initial count of choclate will be the cash / coast and the wrappers in hand will be the same value of choclate, and from there we loop through until the wrap count is less than the exchange rate, inside the loop the choclate count will still hold the same fourmula as before but divided with exchange rate. The wrap count is the tricky part... the wrap will be wrap/ exchange rate(the no. choclate) + the remainder of this division(THIS IS VERY IMPORTANT) because for example if the count of wrapper is 3 and the exchange rate is 2 you can only buy 1 c...

Search Textfield with options and clear button ideal for app TopBar- Jetpack Compose Component

In this blog post, we'll explore a simple yet effective implementation of a search bar in Jetpack Compose. The provided SearchTextField composable offers a basic text field with a placeholder, suitable for building the app top bar. Screen Shot of the Component from my Jot-app The following code can be used to your project directly and it should work as expected, the idea was to have a search bar for a top app which can also hst the buttons on either ends,do check the code below If you have any suggestions or improvements for the code, let's have a conversation below. Your feedback is valuable to me