
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Resize an Array in Java
An array cannot be resized dynamically in Java.
- One approach is to use java.util.ArrayList(or java.util.Vector) instead of a native array.
- Another approach is to re-allocate an array with a different size and copy the contents of the old array to the new array.
Example:
class ResizableArray { public static void main (String[] args) { int[] a = {1, 2, 3}; a = (int[])resizeArray(a, 5); a[3] = 4; a[4] = 5; for (int i=0; i<a.length; i++) System.out.println(a[i]); } private static Object resizeArray (Object oldArray, int newSize) { int oldSize = java.lang.reflect.Array.getLength(oldArray); Class elementType = oldArray.getClass().getComponentType(); Object newArray = java.lang.reflect.Array.newInstance(elementType, newSize); int preserveLength = Math.min(oldSize, newSize); if (preserveLength > 0) System.arraycopy(oldArray, 0, newArray, 0, preserveLength); return newArray; } }
Output:
1 2 3 4 5
Advertisements