code: public static Object toPrimitiveArray(Object[] array) {
          Class primitiveType;
          if (array.length > 0) {
              LOG.debug("很可能array是用new Object[length]()构造的，这个时候array.getClass().getComponentType()返回的是Object类型，这不是我们期望的" +
                      "我们希望使用元素的实际类型，这里有一个风险点，即数组类型不一致,后面可能就会抛出类型转换异常");
              primitiveType = Reflection.getPrimitiveType(array[0].getClass());
          } else {
              primitiveType = Reflection.getPrimitiveType(array.getClass().getComponentType());
          }
          Object primitiveArray = Array.newInstance(primitiveType, array.length);
          for (int i = 0; i < array.length; i++) {
              Array.set(primitiveArray, i, array[i]);
          }
          return primitiveArray;
      }
docs: 将object数组转换为原始类型数组
  
  @param array eg. Integer[],Boolean[],Double[]
  @return eg. int[],  boolean[],double[]