Android examples for java.lang.reflect:Class
Defensive programming technique to change a null reference to an empty one.
/*/* w ww .j ava2s . co m*/ * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You 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. */ //package com.java2s; public class Main { /** * An empty immutable {@code Object} array. */ public static final Object[] EMPTY_OBJECT_ARRAY = new Object[0]; /** * An empty immutable {@code Class} array. */ public static final Class<?>[] EMPTY_CLASS_ARRAY = new Class[0]; /** * An empty immutable {@code String} array. */ public static final String[] EMPTY_STRING_ARRAY = new String[0]; /** * An empty immutable {@code long} array. */ public static final long[] EMPTY_LONG_ARRAY = new long[0]; /** * An empty immutable {@code Long} array. */ public static final Long[] EMPTY_LONG_OBJECT_ARRAY = new Long[0]; /** * An empty immutable {@code int} array. */ public static final int[] EMPTY_INT_ARRAY = new int[0]; /** * An empty immutable {@code Integer} array. */ public static final Integer[] EMPTY_INTEGER_OBJECT_ARRAY = new Integer[0]; /** * An empty immutable {@code short} array. */ public static final short[] EMPTY_SHORT_ARRAY = new short[0]; /** * An empty immutable {@code Short} array. */ public static final Short[] EMPTY_SHORT_OBJECT_ARRAY = new Short[0]; /** * An empty immutable {@code byte} array. */ public static final byte[] EMPTY_BYTE_ARRAY = new byte[0]; /** * An empty immutable {@code Byte} array. */ public static final Byte[] EMPTY_BYTE_OBJECT_ARRAY = new Byte[0]; /** * An empty immutable {@code double} array. */ public static final double[] EMPTY_DOUBLE_ARRAY = new double[0]; /** * An empty immutable {@code Double} array. */ public static final Double[] EMPTY_DOUBLE_OBJECT_ARRAY = new Double[0]; /** * An empty immutable {@code float} array. */ public static final float[] EMPTY_FLOAT_ARRAY = new float[0]; /** * An empty immutable {@code Float} array. */ public static final Float[] EMPTY_FLOAT_OBJECT_ARRAY = new Float[0]; /** * An empty immutable {@code boolean} array. */ public static final boolean[] EMPTY_BOOLEAN_ARRAY = new boolean[0]; /** * An empty immutable {@code Boolean} array. */ public static final Boolean[] EMPTY_BOOLEAN_OBJECT_ARRAY = new Boolean[0]; /** * An empty immutable {@code char} array. */ public static final char[] EMPTY_CHAR_ARRAY = new char[0]; /** * An empty immutable {@code Character} array. */ public static final Character[] EMPTY_CHARACTER_OBJECT_ARRAY = new Character[0]; /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Object[] nullToEmpty(final Object[] array) { if (isEmpty(array)) { return EMPTY_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 3.2 */ public static Class<?>[] nullToEmpty(final Class<?>[] array) { if (isEmpty(array)) { return EMPTY_CLASS_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static String[] nullToEmpty(final String[] array) { if (isEmpty(array)) { return EMPTY_STRING_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static long[] nullToEmpty(final long[] array) { if (isEmpty(array)) { return EMPTY_LONG_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static int[] nullToEmpty(final int[] array) { if (isEmpty(array)) { return EMPTY_INT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static short[] nullToEmpty(final short[] array) { if (isEmpty(array)) { return EMPTY_SHORT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static char[] nullToEmpty(final char[] array) { if (isEmpty(array)) { return EMPTY_CHAR_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static byte[] nullToEmpty(final byte[] array) { if (isEmpty(array)) { return EMPTY_BYTE_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static double[] nullToEmpty(final double[] array) { if (isEmpty(array)) { return EMPTY_DOUBLE_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static float[] nullToEmpty(final float[] array) { if (isEmpty(array)) { return EMPTY_FLOAT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static boolean[] nullToEmpty(final boolean[] array) { if (isEmpty(array)) { return EMPTY_BOOLEAN_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Long[] nullToEmpty(final Long[] array) { if (isEmpty(array)) { return EMPTY_LONG_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Integer[] nullToEmpty(final Integer[] array) { if (isEmpty(array)) { return EMPTY_INTEGER_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Short[] nullToEmpty(final Short[] array) { if (isEmpty(array)) { return EMPTY_SHORT_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Character[] nullToEmpty(final Character[] array) { if (isEmpty(array)) { return EMPTY_CHARACTER_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Byte[] nullToEmpty(final Byte[] array) { if (isEmpty(array)) { return EMPTY_BYTE_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Double[] nullToEmpty(final Double[] array) { if (isEmpty(array)) { return EMPTY_DOUBLE_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Float[] nullToEmpty(final Float[] array) { if (isEmpty(array)) { return EMPTY_FLOAT_OBJECT_ARRAY; } return array; } /** * <p>Defensive programming technique to change a {@code null} * reference to an empty one.</p> * * <p>This method returns an empty array for a {@code null} input array.</p> * * <p>As a memory optimizing technique an empty array passed in will be overridden with * the empty {@code public static} references in this class.</p> * * @param array the array to check for {@code null} or empty * @return the same array, {@code public static} empty array if {@code null} or empty input * @since 2.5 */ public static Boolean[] nullToEmpty(final Boolean[] array) { if (isEmpty(array)) { return EMPTY_BOOLEAN_OBJECT_ARRAY; } return array; } /** * <p>Checks if an array of Objects is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final Object[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive longs is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final long[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive ints is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final int[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive shorts is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final short[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive chars is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final char[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive bytes is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final byte[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive doubles is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final double[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive floats is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final float[] array) { return array == null || array.length == 0; } /** * <p>Checks if an array of primitive booleans is empty or {@code null}.</p> * * @param array the array to test * @return {@code true} if the array is empty or {@code null} * @since 2.1 */ public static boolean isEmpty(final boolean[] array) { return array == null || array.length == 0; } }