从数组java中删除对象

时间:2016-02-09 07:03:39

标签: java arrays

我的练习问题是"此方法返回一个包含指定

元素的数组
 // array of Objects, with the Object at the specified index removed.

    // the returned array should be smaller by one and have all elements

    // in the same relative location to each other. YOU MAY NOT USE

    // A LIST :)

Object[] remove(int index, Object[] arr){"

到目前为止,我已经提出了这个问题,而且我并不完全确定它有效。你们可以看看,并给我一些关于如何解决它的反馈,以便我能做到这一点"删除"正常。

public static remove(int index, Object[] arr){
int counter = 0;
int temp = 2;
int[] arr = {1, 2, 3, 4};
int[] second = new int[arr.length-1];

    for(int i=0; i< arr.length;i++){
        if(i != temp){
            second[counter] = arr[i];
            counter ++;

        }
        //return second;
    }

2 个答案:

答案 0 :(得分:2)

public static Object[] remove(int index, Object[] array) {
    Object[] newArray = new Object[array.length - 1];
    for (int i = 0; i < array.length; i++) {
        if (index > i) {
            newArray[i] = array[i];
        } else if(index < i) {
            newArray[i - 1] = array[i];
        }
    }
    return newArray;
}

答案 1 :(得分:0)

除了index之外的所有元素,您必须将所有元素复制到新的array并返回该元素。