### Question:
TypeUtils { public static boolean isArray(Type type) { Utils.checkNotNull(type, "type"); boolean array; if (type instanceof Class) { array = ((Class<?>) type).isArray(); } else if (type instanceof GenericArrayType) { array = true; } else { array = false; } return array; } private  TypeUtils(); static boolean isAssignable(Type supertype, Type type); static boolean isInstance(Type type, Object object); static Type getErasedType(Type type); static Class<?> getRawType(Type type); static boolean isArray(Type type); static Type getComponentType(Type type); static Type getArrayType(Type componentType); static boolean isSimpleParameterizedType(Type type, Class<?> rawType); static Type getActualTypeArgument(Type type); static String toString(Type type); static String toString(Type type, ClassSerializer serializer); static String toUnqualifiedString(Type type);  }### Answer:
@Test(expected = NullPointerException.class) public void isArrayWithNull() { TypeUtils.isArray(null); }
@Test public void isArrayWithClass() { assertFalse(TypeUtils.isArray(Integer.class)); }
@Test public void isArrayWithClassArray() { assertTrue(TypeUtils.isArray(Integer[].class)); }
@Test public void isArrayWithTypeVariable() { assertFalse(TypeUtils.isArray(Types.typeVariable(declaration, "T"))); }
@Test public void isArrayWithGenericArrayType() { assertTrue(TypeUtils.isArray(Types.genericArrayType(Integer.class))); }
@Test public void isArrayWithParameterizedType() { assertFalse(TypeUtils.isArray(Types.parameterizedType(List.class, Integer.class))); }
@Test public void isArrayWithWildcardType() { assertFalse(TypeUtils.isArray(Types.unboundedWildcardType())); }