Как разбить строку на список и обрезать в одну строку Java - PullRequest
1 голос
/ 26 сентября 2019

Пожалуйста, посмотрите на мой код

 String Str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025";
                List<String> splitStr = Arrays.asList(Str.split(","));

В моем списке (splitStr) есть строки с пробелами.

Есть ли способ разбить строку и обрезать все элементы в одной строкекода?

Ответы [ 4 ]

6 голосов
/ 26 сентября 2019

Да, просто выполните:

String str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025";
List<String> splitStr = Arrays.stream(str.split(","))
    .map(String::trim)
    .collect(Collectors.toList());

Объяснение:
Сначала мы разделимся на ,:

                                      str.split(",")

Затем мы переходимэто в поток (не обрезанных) строк:

                        Arrays.stream(str.split(","))

Далее мы обрезаем все строки в потоке:

                        Arrays.stream(str.split(","))
    .map(String::trim)

Наконец, мы собираем все обрезанные строки в список:

                        Arrays.stream(str.split(","))
    .map(String::trim)
    .collect(Collectors.toList());
0 голосов
/ 26 сентября 2019

МОЖЕТ БЫТЬ ЭТО ПОМОЖЕТ ВАМ

ОДИН СПОСОБ: -

ВЫ МОЖЕТЕ СОХРАНИТЬ ЭТО НА ДРУГОМ list splitStr2

List<String> ss = new ArrayList<String>();
for(String s:*splitStr*){ss.add(s.trim()); }

ЭТО ОДИН ПРОВЕРКА ДЛЯ НОВОГО СПИСКА ( БЕЗ_БЕЗДЕЙСТВИЙ )

for(String temp:ss){System.out.println(temp);}

*screenshot*

0 голосов
/ 26 сентября 2019

Не уверен, могут ли отдельные элементы содержать пробелы.Если нет, просто удалите все пробелы:

List<String> splitStr = Arrays.asList(Str.replace(" ", "").split(","));
0 голосов
/ 26 сентября 2019

Просто выполните замену всех пробелов перед выполнением итераций:

    String Str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025".replace(" ", "");
    List<String> splitStr = Arrays.asList(Str.split(","));
...