This is a Java Program to implement Dynamic Array. A dynamic array, growable array, resizable array, dynamic table, mutable array, or array list is a random access, variable-size list data structure that allows elements to be added or removed.
Here is the source code of the Java Program to implement Dynamic Array. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/**
** Java Program to implement Dynamic Array
**/
import java.util.Scanner;
import java.util.ArrayList;
/** class DynamicArray */
class DynamicArray
{
private ArrayList<String> al;
/** constructor **/
public DynamicArray()
{
al = new ArrayList<String>();
}
/** function to clear **/
public void clear()
{
al.clear();
}
/** function to get size **/
public int size()
{
return al.size();
}
/** function to insert element **/
public void insert(String key)
{
al.add(key);
}
/** function to get element at index **/
public String get(int index)
{
if (index >= al.size())
return "";
return al.get(index);
}
/** function to remove element at index **/
public void remove(int index)
{
if (index >= al.size())
return ;
al.remove(index);
}
/** function to remove element **/
public void remove(String key)
{
al.remove(key);
}
/** function to display array **/
public void display()
{
System.out.println("\nDynamic Array : "+ al);
System.out.println();
}
}
/** Class DynamicArrayTest **/
public class DynamicArrayTest
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
System.out.println("Dynamic Array Test\n");
DynamicArray da = new DynamicArray();
char ch;
/* Perform Dynamic Array operations */
do
{
System.out.println("\nDynamic Array\n");
System.out.println("1. insert ");
System.out.println("2. remove by index");
System.out.println("3. remove by val");
System.out.println("4. clear");
System.out.println("5. size");
int choice = scan.nextInt();
switch (choice)
{
case 1 :
System.out.println("Enter value to insert");
da.insert(scan.next() );
break;
case 2 :
System.out.println("Enter index");
da.remove(scan.nextInt() );
break;
case 3 :
System.out.println("Enter value");
da.remove(scan.next() );
break;
case 4 :
System.out.println("\nDynamic Array Cleared");
da.clear();
break;
case 5 :
System.out.println("\nSize = "+ da.size() );
break;
default :
System.out.println("Wrong Entry \n ");
break;
}
da.display();
System.out.println("\nDo you want to continue (Type y or n) \n");
ch = scan.next().charAt(0);
} while (ch == 'Y'|| ch == 'y');
}
}
Dynamic Array Test Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 1 Enter value to insert apple Dynamic Array : [apple] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 1 Enter value to insert mango Dynamic Array : [apple, mango] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 1 Enter value to insert banana Dynamic Array : [apple, mango, banana] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 1 Enter value to insert strawberry Dynamic Array : [apple, mango, banana, strawberry] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 5 Size = 4 Dynamic Array : [apple, mango, banana, strawberry] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 2 Enter index 2 Dynamic Array : [apple, mango, strawberry] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 3 Enter value strawberry Dynamic Array : [apple, mango] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 5 Size = 2 Dynamic Array : [apple, mango] Do you want to continue (Type y or n) y Dynamic Array 1. insert 2. remove by index 3. remove by val 4. clear 5. size 4 Dynamic Array Cleared Dynamic Array : [] Do you want to continue (Type y or n) n
Related posts:
The Spring @Controller and @RestController Annotations
Java Program to Implement Slicker Algorithm that avoids Triangulation to Find Area of a Polygon
Java Program to Implement Fermat Primality Test Algorithm
Spring MVC and the @ModelAttribute Annotation
Java Program to Implement vector
Mapping a Dynamic JSON Object with Jackson
Java Program to Implement Multi-Threaded Version of Binary Search Tree
Introduction to the Java ArrayDeque
Bootstrap a Web Application with Spring 5
Java Program to Perform Cryptography Using Transposition Technique
A Guide to ConcurrentMap
Configuring a DataSource Programmatically in Spring Boot
How to Implement Caching using Adonis.js 5
An Intro to Spring Cloud Task
Java Program to Implement Suffix Array
Java Program to Implement Queue
Spring Boot - Admin Client
Java Program to Create the Prufer Code for a Tree
Extract network card address
Guide to Java Instrumentation
Java Program to Find k Numbers Closest to Median of S, Where S is a Set of n Numbers
The Registration Process With Spring Security
Java Program to Find the Shortest Path from Source Vertex to All Other Vertices in Linear Time
Java Program to Implement HashTable API
Automatic Property Expansion with Spring Boot
Spring Boot - Securing Web Applications
Java Program to Implement Circular Doubly Linked List
wait() and notify() Methods in Java
An Introduction to Java.util.Hashtable Class
A Guide to Concurrent Queues in Java
Spring Boot - Tomcat Port Number
Java CyclicBarrier vs CountDownLatch