Удаление пробелов из строки и удаление их из массива char

У меня есть вход, который получает строку в Java:

"a                                                a" 

(Всего 50 символов, 2 буквы и 48 пробелов)

когда я пытался

replace("\\s++","");

или же

replaceAll("\\s+","");

удаляет пробелы, но сохраняет строку (массив символов) с '\u0000' 0 Как удалить это, чтобы сделать строку только с 2 символами?

2 ответа

Во-первых, я хотел бы напомнить вам о том, что функция replaceAll возвращает новую строку и не меняет оригинал. Строки в Java неизменны.

Затем для удаления пробелов и '\u0000' просто сделай это:

    String a = "a                                                a" ;
    a = a.replaceAll("[\\s\u0000]+","");   // set the result to a;
    System.out.println(a + " " + a.length());

ВЫХОД:

aa 2
   String str = "a                                                a" ;

   str = str.replaceAll(" ", "");
    System.out.println(str);
Другие вопросы по тегам