code: public static String autoFill(String source, Integer length, String str, Boolean isRight) {
  
          // 初始化校验
          if (source == null || length == null || (source + "").length() >= length)
              return source + "";
  
          // 指定填充字符
          if (isEmpty(str))
              str = "0";
  
          // 指定填充方向
          if (isRight == null)
              isRight = false;
  
  
          // 字符填充长度
          int count = (source + "").length();
  
          StringBuilder sb = new StringBuilder(length);
  
          // 右填充
          if (isRight) {
              sb.append(source);
          }
  
          // 字符填充
          int size = length - count;
          for (int i = 0; i < size; i++) {
              sb.append(str);
          }
  
          // 左填充
          if (!isRight) {
              sb.append(source);
          }
  
          return sb.toString();
      }
docs: 自动填充
  <p>
  比如：待填充字符串：Dd，用x在其左侧填充成10位的字符串，
  则为：xxxxxxxxDd
  </p>
  <p>
  如果待字符串is null，则返回null。
  如果填充长度is null,或者小于原长度，则返回原待填充字符串。
  例如：待填充字符串：Dd，用x在其左侧填充成10位的字符串，则仍然为：Dd
  </p>
  <p>
  如果你有指定填充字符串，或者填充方向，我们会进行默认。
  填充字符串默认为：0，方向为：左。
  例如：待填充字符串：Dd，填充成10位的字符串，则为：00000000Dd
  </p>
  @param source 待填充的字符串
  @param length 填充后的长度
  @param str 填充的字符（串）
  @param isRight 是否在原字符串的右侧填充
  @return 填充后的字符串