Array List in Java are the important data structures that can be extended to accommodate a greater number of elements and shrink back by removing items from the array when not needed. This is highly important if you wanted to handle elements within array dynamically. Here is an example of how to print the whole array list in Java –
System.out.println(“Whole List=”+ ListTest);
What is Array List in Java?
Java Array List is the resizable array or the implementation of List interface that grows automatically as requirement grow, so performance is always better in case of the single threaded environment.
Wondering how are Array List in Java different from the Arrays and Lists in Java? Look at the following example for a better understanding. See the given picture where one man stretching the rubber band and it can be extended to higher length than the actual one to accommodate a number of objects within rubber band.
However, the actual size of the rubber band is much smaller if it is not stretched. At the same time, take one rope as another example that cannot be stretched and whose size will remain fixed always. Here, the rubber band is the Array list where elements can be added when required and shrink back if not required and the rope is an Array.
Read: Java skills – An attractive opportunity of employment for youth
The important facts related to an Array List include here –
- They do contain duplicate elements and maintain the insertion order. They can also be defined as null as well.
- Array List cannot be synchronized and allows random access when array works at the index basis.
- In the case of Array List, manipulation is sometimes slower because it takes a lot of time in removing any particular element from the list.
- They are not safe in a threaded environment so extra care needs to perform when executed in a multithreaded environment.
- If you wanted to add objected then they are always maintained in a specific order. To retrieve the first object from an array list, call the index with object 0.
- The default capacity of an array is taken as 10 in Java. However, the value can be revised anytime by calling the “ensureCapacity (int minCapacity)” method.
- Once iterators are modified, they can be called by iterator add or remove methods only otherwise it may throw exceptions.
- The random access is possible in the case of Java Array List as it is working on the basis of the index and you can access elements anytime when needed.
- Further, array list in java does support Generics and this is the best way of creating an array list in Java.
The basic syntax for java array list look like this as given below –
The diagram given above shows the hierarchy of an array list in Java where Array List extends the Abstract class and the abstract class implements List first then collection and the Iterables, in the end, Java collection frameworks were non-generic before JDK 1.5 and after this version, they went to generic. In the generic collection, you could define only one type of elements or objects in the program. Today, it has gone safe too so there is no need for the typecasting. How array list was created in the older version (Non-Generic) – How array lists are created in the current version (Generic) – Now data type in modern array lists is given in angular braces. They are forced to store a particular type of objects only. If you will try to add any other data type then it will show the compile-time error.
Constructors in Java Array List
It contains three constructors majorly – ArrayList (), ArrayList (Collection<? Extends E> c), and ArrayList (int initialCapacity).
- ArrayList () – This is a most frequently used Java constructor that will return an empty array with a capacity of 10.
- ArrayList (Collection<? Extends E> c) – Here, the constructor will return a list of specific elements in the same order as they are returned by the iterator. It will throw an exception If the collection argument is NULL.
- ArrayList (int initialCapacity) – This constructor is useful if you wanted to declare an array with a large capacity to store a huge amount of data.
Methods in Java Array List
There are a plenty of methods that can be used along one array list. Here, we have listed a few only that are used frequently by programmers and necessary to learn by aspirants.
- Array List add () – This method is used to add elements to an array. If an array already has few elements and you wanted to add more then you can use this method and keep adding the elements unless the syntax is specified.
Syntax: add (Object o);
- Array List Remove () – To delete a specific element from the list, this specific method is used to reduce the size of an array accordingly. You can also delete an element based on its index.
Syntax: remove (Object o);
- Java array size () – This method specifies the total number of elements for the array list. Like other, the first element will be started with index ().
Syntax: int size ();
Read: What is Inheritance in Java? Different Types of Inheritance in Java
- Array List Contains – Here, the output will be true if the list contains any specified element.
Syntax: boolean contains (Object o);
Array and Array List Compared
The discussion is incomplete if you don’t know the differences among array and array list in Java and which one to choose among two. Here, both are compared on eight major points like performance, resizable, primitives, traversal, length, type safety, add elements, and multi-dimensional.
- Arrays are the fixed data structure and static in nature. One cannot change the size of an array once it is defined.
- At the same time, array lists are dynamic in nature associated with an object whose size can be changed as needed. When you start adding elements into an array list, its size will grow automatically.
- The performance of an array and array list depends on the operations you are performing. For example, when the size of an array list is resized, it slows the performance automatically.
- The performance for adding or removing elements into an array or array lists is almost the same in both the cases.
- Array List does not contain any primitive data type but it contains only objects to store data.
- At the same time, arrays have primitive data types that include char, int, byte, short, long, double, float etc. Users have a misconception that array list could store primitive data types too but this is not true.
Iteration – To iterate through the array list, an iterator is required. We can use either for loop or each loop to iterate through array elements.
Read: What is Java String? How to Declare String Array in Java with Example
Type Safety – In Java, safety is embedded through Generics. At the same time, array lists are the homogeneous data structure thus it contains values of a particular data type only. If you will try to store any different value then it will show the compile-time error in that case.
Length – To give the size of an array list, you may use the size () method. Each array has a variable-sized object that will return the fixed length in the end.
Integer arrayobject = new integer;
Arraylength = arrayobject.length; //uses arrayobject length variable
Arraylist arraylistobject = new arraylist();
Add the Elements – To insert elements in the array list, add () method is used and it will insert new elements in the list with the assignment operator.
Multi-dimensional – The array could be multi-dimensional but array lists are always one dimensional only.
Here are some similarities between the array and array list -
- Performance for getting and adding elements in the array and array lists are the same. Both run constantly at the executions time.
- Both are containing duplicate elements and they can store NULL values too.
- The index is used to refer elements in an array and the array list. There is no guarantee of ordered elements in both the cases.
With this discussion, we come to an end of this blog. Now you had enough information about Array List in Java and how to print the list, add or create elements to an existing array based on requirement. To know more, you should join Java certification training program for practical experience and be an established Java programmer too.
Read: Java Programmer Resume Template Sample - Guide for Fresher & Experienced
- AWS & Fundamentals of Linux
- Amazon Simple Storage Service
- Elastic Compute Cloud
- Databases Overview & Amazon Route 53
14 days 12 Jun 2020
- Intro to DevOps
- GIT and Maven
- Jenkins & Ansible
- Docker and Cloud Computing
6 days 04 Jun 2020
- Data Science Introduction
- Hadoop and Spark Overview
- Python & Intro to R Programming
- Machine Learning
10 days 08 Jun 2020
- Architecture, HDFS & MapReduce
- Unix Shell & Apache Pig Installation
- HIVE Installation & User-Defined Functions
- SQOOP & Hbase Installation
4 days 02 Jun 2020
- Salesforce Configuration Introduction
- Security & Automation Process
- Sales & Service Cloud
- Apex Programming, SOQL & SOSL
1 day 30 May 2020
- Introduction and Software Testing
- Software Test Life Cycle
- Automation Testing and API Testing
- Selenium framework development using Testing
3 days 01 Jun 2020
- BA & Stakeholders Overview
- BPMN, Requirement Elicitation
- BA Tools & Design Documents
- Enterprise Analysis, Agile & Scrum
5 days 03 Jun 2020
MS SQL Server
- Introduction & Database Query
- Programming, Indexes & System Functions
- SSIS Package Development Procedures
- SSRS Report Design
10 days 08 Jun 2020
Receive Latest Materials and Offers on Java Course