code: private static BigDecimal[] calculateInlineFormula(int start, String formula) throws Exception {
          BigDecimal[] result = new BigDecimal[2];
          StringBuilder inlineFormula = new StringBuilder();
          for (; start < formula.length(); start++) {
              char c = formula.charAt(start);
              if (c == '(') {
                  BigDecimal[] res = calculateInlineFormula(start + 1, formula);
                  inlineFormula.append(res[0]);
                  start = res[1].intValue();
              } else if (c == ')') {
                  break;
              } else {
                  inlineFormula.append(c);
              }
          }
          result[0] = calculate(inlineFormula.toString());
          result[1] = BigDecimal.valueOf(start);
          return result;
      }
docs: 计算（）内的表达式
  
  @param start 开始位置
  @param formula 表达式
  
  @return 长度为2的 {@link BigDecimal}数组，位置0表示计算结果，位置1表示结束位置
  
  @throws Exception 异常