code: private static String[] tokenizePathAsArray(String path) {
          String root = null;
          if (FileUtil.isAbsolutePath(path)) {
              String[] s = FileUtil.dissect(path);
              root = s[0];
              path = s[1];
          }
          char sep = File.separatorChar;
          int start = 0;
          int len = path.length();
          int count = 0;
          for (int pos = 0; pos < len; pos++) {
              if (path.charAt(pos) == sep) {
                  if (pos != start) {
                      count++;
                  }
                  start = pos + 1;
              }
          }
          if (len != start) {
              count++;
          }
          String[] l = new String[count + ((root == null) ? 0 : 1)];
  
          if (root != null) {
              l[0] = root;
              count = 1;
          } else {
              count = 0;
          }
          start = 0;
          for (int pos = 0; pos < len; pos++) {
              if (path.charAt(pos) == sep) {
                  if (pos != start) {
                      String tok = path.substring(start, pos);
                      l[count++] = tok;
                  }
                  start = pos + 1;
              }
          }
          if (len != start) {
              String tok = path.substring(start);
              l[count/*++*/] = tok;
          }
          return l;
      }
docs: Same as {@link #tokenizePath tokenizePath} but hopefully faster.