code: public static String wrapIfMissing(final String str, final char wrapWith) {
          if (isEmpty(str) || wrapWith == CharUtils.NUL) {
              return str;
          }
          final StringBuilder builder = new StringBuilder(str.length() + 2);
          if (str.charAt(0) != wrapWith) {
              builder.append(wrapWith);
          }
          builder.append(str);
          if (str.charAt(str.length() - 1) != wrapWith) {
              builder.append(wrapWith);
          }
          return builder.toString();
      }
docs: <p>
  Wraps a string with a char if that char is missing from the start or end of the given string.
  </p>
  
  <pre>
  StringUtils.wrap(null, *)        = null
  StringUtils.wrap("", *)          = ""
  StringUtils.wrap("ab", '\0')     = "ab"
  StringUtils.wrap("ab", 'x')      = "xabx"
  StringUtils.wrap("ab", '\'')     = "'ab'"
  StringUtils.wrap("\"ab\"", '\"') = "\"ab\""
  StringUtils.wrap("/", '/')  = "/"
  StringUtils.wrap("a/b/c", '/')  = "/a/b/c/"
  StringUtils.wrap("/a/b/c", '/')  = "/a/b/c/"
  StringUtils.wrap("a/b/c/", '/')  = "/a/b/c/"
  </pre>
  
  @param str
  the string to be wrapped, may be {@code null}
  @param wrapWith
  the char that will wrap {@code str}
  @return the wrapped string, or {@code null} if {@code str==null}
  @since 3.5