code: public static <T, V> String join(Map<T, V> map, String separator) {
  
  		if (separator == null || separator.equalsIgnoreCase("")) {
  			throw new IllegalArgumentException("Missing separator!");
  		}
  
  		StringBuilder output = new StringBuilder();
  		if (map != null) {
  			for (Object key : map.keySet()) {
  				if (output.length() > 0) {
  					output.append(separator);
  				}
  
  				output.append(key).append("=").append(map.get(key));
  			}
  		}
  
  		return output.toString();
  	}
docs: Joins list of string items to a single string, where items are separated
  with a defined separator.
  
  @param map       to join into key=value list
  @param separator to be used between elements
  @param <T> key class type
  @param <V> value class type
  @return map key values joined into a single string