All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ioc.commons.utils.array.ArrayUtils Maven / Gradle / Ivy

package org.ioc.commons.utils.array;

import java.lang.reflect.Array;

public class ArrayUtils {
	@SuppressWarnings("unchecked")
	public static  T[] appendElement(Class clazz, T[] array, T element) {
		final T[] result;
		final int end;
		if (array != null) {
			end = array.length;
			result = (T[]) Array.newInstance(clazz, end + 1);
			System.arraycopy(array, 0, result, 0, end);
		} else {
			end = 0;
			result = (T[]) Array.newInstance(clazz, 1);
		}
		result[end] = element;
		return result;
	}

	@SuppressWarnings("unchecked")
	public static  T[] insertElement(Class clazz, T[] array, T element, int index) {
		final T[] result;
		final int end;
		if (array != null) {
			end = array.length;
			result = (T[]) Array.newInstance(clazz, end + 1);

			System.arraycopy(array, 0, result, 0, index);
			System.arraycopy(array, index, result, index + 1, end - index);
			result[index] = element;
		} else {
			end = 0;
			result = (T[]) Array.newInstance(clazz, 1);
		}
		result[end] = element;
		return result;
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy