Mega Code Archive

 
Categories / Java Tutorial / Reflection
 

Returns the length of the specified array, can deal with Object arrays and with primitive arrays

/*   Copyright 2004 The Apache Software Foundation  *  *   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; /**  * Operations on arrays, primitive arrays (like <code>int[]</code>) and  * primitive wrapper arrays (like <code>Integer[]</code>).  *   * This class tries to handle <code>null</code> input gracefully.  * An exception will not be thrown for a <code>null</code>  * array input. However, an Object array that contains a <code>null</code>  * element may throw an exception. Each method documents its behaviour.  *  * @author Stephen Colebourne  * @author Moritz Petersen  * @author <a href="mailto:fredrik@westermarck.com">Fredrik Westermarck</a>  * @author Nikolay Metchev  * @author Matthew Hawthorne  * @author Tim O'Brien  * @author Pete Gieser  * @author Gary Gregory  * @author <a href="mailto:equinus100@hotmail.com">Ashwin S</a>  * @author Maarten Coene  * @since 2.0  * @version $Id: ArrayUtils.java 632503 2008-03-01 00:21:52Z ggregory $  */ public class Main {   //-----------------------------------------------------------------------   /**    * Returns the length of the specified array.    * This method can deal with <code>Object</code> arrays and with primitive arrays.    *    * If the input array is <code>null</code>, <code>0</code> is returned.    *    * <pre>    * ArrayUtils.getLength(null)            = 0    * ArrayUtils.getLength([])              = 0    * ArrayUtils.getLength([null])          = 1    * ArrayUtils.getLength([true, false])   = 2    * ArrayUtils.getLength([1, 2, 3])       = 3    * ArrayUtils.getLength(["a", "b", "c"]) = 3    * </pre>    *    * @param array  the array to retrieve the length from, may be null    * @return The length of the array, or <code>0</code> if the array is <code>null</code>    * @throws IllegalArgumentException if the object arguement is not an array.    * @since 2.1    */   public static int getLength(Object array) {       if (array == null) {           return 0;       }       return Array.getLength(array);   } }