Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
/*-------------------------------------------------------------------------+
 |                                                                          |
 | Copyright 2005-2011 The ConQAT Project                                   |
 |                                                                          |
 | Licensed under the Apache License, Version 2.0 (the "License");          |
 | you may not use this file except in compliance with the License.         |
 | You may obtain a copy of the License at                                  |
 |                                                                          |
 |    http://www.apache.org/licenses/LICENSE-2.0                            |
 |                                                                          |
 | Unless required by applicable law or agreed to in writing, software      |
 | distributed under the License is distributed on an "AS IS" BASIS,        |
 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
 | See the License for the specific language governing permissions and      |
 | limitations under the License.                                           |
 +-------------------------------------------------------------------------*/

import java.lang.reflect.Array;

public class Main {
    /** Removes an element from the array and returns the new array. */
    @SuppressWarnings("unchecked")
    public static <T> T[] removeElementFromArray(T element, T[] array) {
        T[] newArray = (T[]) Array.newInstance(element.getClass(), array.length - 1);
        int newIndex = 0;
        for (T arrayElement : array) {
            if (!arrayElement.equals(element)) {
                if (newIndex >= newArray.length) {
                    // element is not member of array
                    return array;
                }
                newArray[newIndex] = arrayElement;
                newIndex++;
            }
        }
        return newArray;
    }
}