This Java program is to Implement Variable length array. In programming, a variable-length array (or VLA) is an array data structure of automatic storage duration whose length is determined at run time (instead of at compile time).
Here is the source code of the Java program to implement variable length array. The Java program is successfully compiled and run on a Linux system. The program output is also shown below.
import java.util.ArrayList;
import java.util.Scanner;
public class VariableLengthArray<T>
{
private volatile int size;
private ArrayList<T> array;
public VariableLengthArray()
{
array = new ArrayList<T>();
setSize(-1);
}
public void setSize(int size)
{
this.size = size;
}
public int getSize()
{
return size;
}
public void store(int index, T value)
{
try
{
array.set(index, value);
} catch (IndexOutOfBoundsException indexOutBounds)
{
if (index >= 0 && !(index < size))
{
throw new IndexOutOfBoundsException();
}
array.add(index, value);
}
}
public T get(int index)
{
try
{
if (index >= 0 && index < size)
return array.get(index);
else
throw new IndexOutOfBoundsException();
} catch (IndexOutOfBoundsException indexOutBounds)
{
System.out.println("INDEX OUT OF BOUNDS : the specified index is
more than the size of the array");
}
return null;
}
public T remove(int index)
{
try
{
if (index >= 0 && index < size)
{
size--;
return array.remove(index);
} else
throw new IndexOutOfBoundsException();
} catch (IndexOutOfBoundsException indexOutBounds)
{
System.out.println("INDEX OUT OF BOUNDS : the specified index
is more than the size of the array");
}
return null;
}
public static void main(String... arg)
{
int size, value;
String choice;
Scanner scanner = new Scanner(System.in);
VariableLengthArray<Integer> integersArray = new VariableLengthArray<Integer>();
do
{
System.out.println("Enter the size of the array");
size = scanner.nextInt();
integersArray.setSize(size);
System.out.println("Enter the values of the array");
for (int index = 0; index < integersArray.getSize(); index++)
{
value = scanner.nextInt();
integersArray.store(index, value);
}
System.out.println("The Values entered are ");
for (int index = 0; index < integersArray.getSize(); index++)
{
System.out.print(integersArray.get(index) + "\t");
}
System.out.println("\nEnter more values ?[y/n]");
choice = scanner.next();
} while (choice.equals("y"));
scanner.close();
}
}
$javac VariableLengthArray.java $java VariableLengthArray Enter the size of the array 5 Enter the values of the array 10 9 8 7 6 The Values entered are 10 9 8 7 6 Enter more values ?[y/n] y Enter the size of the array 3 Enter the values of the array 2 3 4 The Values entered are 2 3 4
Related posts:
A Guide to Java HashMap
Biến trong java
Spring Cloud Series – The Gateway Pattern
Tìm hiểu về Web Service
Java Program to Implement LinkedHashSet API
Java IO vs NIO
Java Program to Implement Flood Fill Algorithm
The StackOverflowError in Java
Java Program to Implement Trie
Sử dụng Fork/Join Framework với ForkJoinPool trong Java
Guide to Selenium with JUnit / TestNG
Spring Boot - Flyway Database
Using a Mutex Object in Java
Service Registration with Eureka
Java Program to Perform Naive String Matching
Tạo ứng dụng Java RESTful Client không sử dụng 3rd party libraries
Hướng dẫn sử dụng Printing Service trong Java
List Interface trong Java
Spring Boot - Interceptor
Java Program to Construct an Expression Tree for an Prefix Expression
Registration with Spring Security – Password Encoding
Ép kiểu trong Java (Type casting)
Xử lý ngoại lệ đối với trường hợp ghi đè phương thức trong java
Server-Sent Events in Spring
Debugging Reactive Streams in Java
Java Multi-line String
Java Program to Implement Radix Sort
Spring @RequestMapping New Shortcut Annotations
New Features in Java 12
CharSequence vs. String in Java
Java Program to Represent Graph Using Linked List
Java Program to Perform Postorder Recursive Traversal of a Given Binary Tree