docs: public static List<String> split(String string, char... separators)
    {
      if(string == null) {
        return null;
      }
  
      class ItemsList
      {
        List<String> list = new ArrayList<String>();
  
        void add(StringBuilder wordBuilder)
        {
          String value = wordBuilder.toString().trim();
          if(!value.isEmpty()) {
            list.add(value);
          }
        }
      }
  
      ItemsList itemsList = new ItemsList();
      StringBuilder itemBuilder = new StringBuilder();
  
      for(int i = 0; i < string.length(); ++i) {
        char c = string.charAt(i);
        // append to on building item all characters that are not separators
        if(!isSeparator(c, separators)) {
          itemBuilder.append(c);
        }
        // if separator found add item to list and reset builder
        if(itemBuilder.length() > 0) {
          if(isSeparator(c, separators)) {
            itemsList.add(itemBuilder);
            itemBuilder.setLength(0);
          }
        }
      }
  
      itemsList.add(itemBuilder);
      return itemsList.list;
    }