code: public static Object plusOne(final Object o1) {
          requireNonNull(o1);
          switch (getTypeMark(o1)) {
              case INTEGER:
              case SHORT:
              case BYTE:
                  return ((Number) o1).intValue() + 1;
              case CHAR:
                  return ((Character) o1) + 1;
              case LONG:
                  return ((Number) o1).longValue() + 1L;
              case DOUBLE:
                  return ((Number) o1).doubleValue() + 1D;
              case FLOAT:
                  return ((Number) o1).floatValue() + 1F;
              case BIG_INTEGER:
                  return toBigInteger(o1).add(BigInteger.ONE);
              case BIG_DECIMAL:
                  return toBigDecimal(o1).add(BigDecimal.ONE);
              default:
          }
          throw unsupportedTypeException(o1);
      }
docs: +1