001 /*
002 * $Id: ArrayUtil.java 3681 2011-07-12 13:55:10Z kredel $
003 */
004
005 package edu.jas.util;
006
007
008 //import org.apache.log4j.Logger;
009
010
011 /**
012 * Array utilities.
013 * For example copyOf from Java 6.
014 * <b>Note:</b> unused at the moment since it is not working in Java 5.
015 * @author Heinz Kredel
016 */
017 public class ArrayUtil {
018
019
020 //private static final Logger logger = Logger.getLogger(ArrayUtil.class);
021 // private static boolean debug = logger.isDebugEnabled();
022
023
024 /**
025 * Copy the specified array.
026 * @param original array.
027 * @param newLength new array length.
028 * @return copy of original.
029 */
030 public static <T> T[] copyOf(T[] original, int newLength) {
031 T[] copy = (T[]) new Object[newLength];
032 System.arraycopy(original, 0, copy, 0, Math.min(original.length, newLength));
033 return copy;
034 }
035
036
037 /**
038 * Copy the specified array.
039 * @param original array.
040 * @return copy of original.
041 */
042 public static <T> T[] copyOf(T[] original) {
043 return (T[]) copyOf(original,original.length);
044 }
045
046 }