split с несколькими разделителями в конце
Разбиваю строку на части str.split(","); Если в конце исходной строки есть две запятых подряд, то в выходном массиве этого участка нет вообще. А как сделать, чтобы в конце массива добавлялась пустая строка?
Ответы (1 шт):
Для таких задач есть перегруженный вариант метода split с двумя параметрами:
String[] split(String regex, int limit)
Если limit > 0, то длина возвращаемого массива будет не больше указанного количества элементов. Весть хвост будет помещен в один последний элемент. Разделители в конце игнорируются также как и в варианте с одним параметром.
Если limit = 0, то поведение как у варианта без второго параметра.
Если же limit < 0, причём само значение не важно, то разделители в конце породят пустые строки в конце массива, как вам и нужно.
Ответ на ваш вопрос: str.split(",", -1)