Java examples for Collection Framework:Array Auto Increment
Appends an element to array.
// Copyright (c) 2003-present, Jodd Team (jodd.org). All Rights Reserved. import java.lang.reflect.Array; import static jodd.util.StringPool.NULL; public class Main{ /**/*w ww . j a va 2 s . c o m*/ * Appends an element to array. */ public static <T> T[] append(T[] buffer, T newElement) { T[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>String</code> array. */ public static String[] append(String buffer[], String newElement) { String[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>byte</code> array. */ public static byte[] append(byte buffer[], byte newElement) { byte[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>char</code> array. */ public static char[] append(char buffer[], char newElement) { char[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>short</code> array. */ public static short[] append(short buffer[], short newElement) { short[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>int</code> array. */ public static int[] append(int buffer[], int newElement) { int[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>long</code> array. */ public static long[] append(long buffer[], long newElement) { long[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>float</code> array. */ public static float[] append(float buffer[], float newElement) { float[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>double</code> array. */ public static double[] append(double buffer[], double newElement) { double[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Appends an element to <code>boolean</code> array. */ public static boolean[] append(boolean buffer[], boolean newElement) { boolean[] t = resize(buffer, buffer.length + 1); t[buffer.length] = newElement; return t; } /** * Resizes an array. */ public static <T> T[] resize(T[] buffer, int newSize) { Class<T> componentType = (Class<T>) buffer.getClass() .getComponentType(); T[] temp = (T[]) Array.newInstance(componentType, newSize); System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>String</code> array. */ public static String[] resize(String buffer[], int newSize) { String temp[] = new String[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>byte</code> array. */ public static byte[] resize(byte buffer[], int newSize) { byte temp[] = new byte[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>char</code> array. */ public static char[] resize(char buffer[], int newSize) { char temp[] = new char[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>short</code> array. */ public static short[] resize(short buffer[], int newSize) { short temp[] = new short[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>int</code> array. */ public static int[] resize(int buffer[], int newSize) { int temp[] = new int[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>long</code> array. */ public static long[] resize(long buffer[], int newSize) { long temp[] = new long[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>float</code> array. */ public static float[] resize(float buffer[], int newSize) { float temp[] = new float[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>double</code> array. */ public static double[] resize(double buffer[], int newSize) { double temp[] = new double[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } /** * Resizes a <code>boolean</code> array. */ public static boolean[] resize(boolean buffer[], int newSize) { boolean temp[] = new boolean[newSize]; System.arraycopy(buffer, 0, temp, 0, buffer.length >= newSize ? newSize : buffer.length); return temp; } }