### Question:
PropertyUtil { public static boolean isSimpleProperty(Class<?> clazz) { return isSimpleValueType(clazz) || (clazz.isArray() && isSimpleValueType(clazz.getComponentType())); } private  PropertyUtil(); static boolean isSimpleProperty(Class<?> clazz); static boolean isSimpleValueType(Class<?> clazz); static boolean isCollectionProperty(Type type, boolean includeMaps); static boolean isCollectionProperty(Class<?> clazz, boolean includeMaps); static boolean isMapProperty(Type type); static boolean isMapProperty(Class<?> clazz); static Class<?> getCollectionElementType(Type type); static Object getProperty(Object bean, String name); static void setProperty(Object bean, String name, Object value); static Method getReadMethod(Object bean, String name); static Boolean isPrimitiveOrWrapper(Class<?> clazz);  }### Answer:
@Test public void shouldCheckIfSimpleProperty() { DummyClass clazz = new DummyClass(); assertTrue(PropertyUtil.isSimpleProperty(String.class)); assertFalse(PropertyUtil.isSimpleProperty(clazz.objectArray.getClass())); assertTrue(PropertyUtil.isSimpleProperty(clazz.stringArray.getClass())); assertFalse(PropertyUtil.isSimpleProperty(clazz.objectList.getClass())); assertFalse(PropertyUtil.isSimpleProperty(clazz.stringList.getClass())); }