What is the significance of array push Java?

189    Asked by nada_8865 in Java , Asked on Oct 12, 2022

 I want to make a method arrayIntPush(3, {5,4,8}) that will return {5,4,8,3}. This method seems to work:

public static int[] arrayIntPush(int item, int[] oldArray) {

    int len = oldArray.length;
    int[] newArray = (int[]) Array.newInstance(oldArray.getClass().getComponentType(), len + 1);
    System.arraycopy(oldArray, 0, newArray, 0, len);
    System.arraycopy(new int[] {item}, 0, newArray, len, 1);
return newArray;
}

Is there a better way to do this that would be faster?


Answered by Naina pandey

Is this really needed?


int[] newArray = (int[]) Array.newInstance(oldArray.getClass().getComponentType(), len + 1);

I would do something like:

public static int[] arrayIntPush(int item, int[] oldArray) {
    int len = oldArray.length;
    int[] newArray = new int[len+1];
    System.arraycopy(oldArray, 0, newArray, 0, len);
    new Array[len] = item;
    return newArray;

}

So for an array lush Java of length 10 you make a new array or length 11, copy all existing data into it and then assign the last index to the item.



Your Answer

Interviews

Parent Categories