Java tutorial
//package com.java2s; /* * Copyright (C) 2006 The Android Open Source 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 { /** * Appends an element to a copy of the array and returns the copy. * @param array The original array, or null to represent an empty array. * @param element The element to add. * @return A new array that contains all of the elements of the original array * with the specified element added at the end. */ @SuppressWarnings("unchecked") public static <T> T[] appendElement(Class<T> kind, T[] array, T element) { final T[] result; final int end; if (array != null) { end = array.length; result = (T[]) Array.newInstance(kind, end + 1); System.arraycopy(array, 0, result, 0, end); } else { end = 0; result = (T[]) Array.newInstance(kind, 1); } result[end] = element; return result; } }