code: public static <V> String listToString(List<V> list) {
          List<String> asStrings = list.stream().map(Object::toString).collect(Collectors.toList());
          asStrings.forEach(v -> {
              Preconditions.checkArgument(v == null || !v.contains(","), "Invalid value: %s", v);
          });
          return Joiner.on(",").join(asStrings);
      }
docs: Transforms a list into a string of the from:
  "V1,V2,V3"
  Where the string versions of the key and value are derived from their toString() function.
  
  @param <V> The type of the values of the list.
  @param list The list to be serialized to a string
  @return A string representation of the list.