### Question:
ObjectUtils { public static <T> boolean contains(T[] array, T item) { if (array==null) return false; for (int i=0; i<array.length; i++) { if (array[i]==item) return true; if (array[i]!=null && array[i].equals(item)) return true; } return false; } private  ObjectUtils(); static boolean isEmpty(Object o); static int lengthOf(Object o); @SuppressWarnings("unchecked") static boolean compareEqual(Object o1, Object o2); static boolean compareEqual(Object[] array1, Object[] array2); static T coalesce(T preferred, T alternative); static int toInteger(Object v); static int getInteger(Object v, int defValue); static int getInteger(Object v); static long toLong(Object v); static long getLong(Object v, long defValue); static long getLong(Object v); static double toDouble(Object v); static double getDouble(Object v, double defValue); static double getDouble(Object v); static BigDecimal toDecimal(Object v); static BigDecimal getDecimal(Object v, BigDecimal defValue); static BigDecimal getDecimal(Object v); static boolean getBoolean(Object v); @SuppressWarnings("unchecked") static T getEnum(Class<T> enumType, Object value); static Date getDate(Object v, Locale locale); static Date getDate(Object v); static String formatDate(Date date, boolean withTime); @SuppressWarnings("unchecked") static T convert(Class<T> c, Object v); static boolean isAssignmentCompatible(Class<?> target, Class<?> source); static List<T> convert(Class<T> t, Collection<? extends T> source); static String[] toStringArray(Object[] objArray, String defValue); static boolean contains(T[] array, T item); static synchronized Object getFieldValue(Class<?> clazz, Object object, String property, boolean includePrivateFields); static Object getFieldValue(Object object, String property); static Object getPrivateFieldValue(Object object, String property); static synchronized Object invokeSimpleMethod(Class<?> clazz, Object object, String methodName, boolean includePrivateMethods); static Object invokeSimpleMethod(Object object, String methodName); static Object invokeSimplePrivateMethod(Object object, String methodName); static final NoValue NO_VALUE; }### Answer:
@Test public void testContains() { Float toFind = new Float(456f); Float other = Float.valueOf(123f); Float[] empty = new Float[]{}; Float[] one = new Float[]{toFind}; Float[] both = new Float[]{toFind, other}; assertTrue(ObjectUtils.contains(both, toFind)); assertTrue(ObjectUtils.contains(both, other)); assertTrue(ObjectUtils.contains(both, new Float(123f))); assertTrue(ObjectUtils.contains(both, new Float(456f))); assertTrue(ObjectUtils.contains(one, toFind)); assertFalse(ObjectUtils.contains(one, other)); assertFalse(ObjectUtils.contains(empty, toFind)); assertFalse(ObjectUtils.contains(empty, other)); assertFalse(ObjectUtils.contains(null, null)); assertFalse(ObjectUtils.contains(null, other)); }