Отображение списка на Java так же изящно, как в Python

В Python довольно легко отобразить итерируемый список, разделенный запятыми:

>>> iterable = ["a", "b", "c"] >>> ", ".join(iterable) 'a, b, c' 

Есть ли способ Java, который близок к этой краткости? (Обратите внимание, что в конце нет «,»).

2 Solutions collect form web for “Отображение списка на Java так же изящно, как в Python”

Вот версии с использованием Guava и Commons / Lang, о которых говорил Майкл :

 List<String> items = Arrays.asList("a","b","c"); // Using Guava String guavaVersion = Joiner.on(", ").join(items); // Using Commons / Lang String commonsLangVersion = StringUtils.join(items, ", "); // both versions produce equal output assertEquals(guavaVersion, commonsLangVersion); 

Справка:

  • Guava: Joiner.on(String)
  • Guava: Joiner.join(Iterable<T>)

  • Commons / Lang: StringUtils.join(Collection, String)

AbstractCollection.toString() (который наследуется почти всеми коллекциями стандартного API) в значительной степени делает это. Для массивов вы можете использовать методы Arrays.toString() (которые также работают с примитивными массивами).

Вероятно, что-то есть в коллекциях Apache Commons или Google Guava, что позволяет вам выбирать символ разделителя и не окружает результаты в скобках.

Python - лучший язык программирования в мире.