code: public static <V> String formatPairs( Map<String,V> entries )
      {
          Iterator<Entry<String,V>> iterator = entries.entrySet().iterator();
          switch ( entries.size() ) {
              case 0:
                  return "{}";
  
              case 1:
              {
                  return String.format( "{%s}", keyValueString( iterator.next() ) );
              }
  
              default:
              {
                  StringBuilder builder = new StringBuilder();
                  builder.append( "{" );
                  builder.append( keyValueString( iterator.next() ) );
                  while ( iterator.hasNext() )
                  {
                      builder.append( ',' );
                      builder.append( ' ' );
                      builder.append( keyValueString( iterator.next() ) );
                  }
                  builder.append( "}" );
                  return builder.toString();
              }
          }
      }
docs: formats map using ':' as key-value separator instead of default '='