Ответ 1
Более короткий будет использовать регулярное выражение:
System.out.println("Joe".replaceAll(".(?!$)", "$0 "));
Мне нужно вставить пробел после каждого символа строки.
то есть.
String name = "Joe";
должен стать: "J o e"
Более короткий будет использовать регулярное выражение:
System.out.println("Joe".replaceAll(".(?!$)", "$0 "));
Что-то вроде:
String joe = "Joe";
StringBuilder sb = new StringBuilder();
for (char c: joe.toCharArray()) {
sb.append(c).append(" ");
}
System.out.println(sb.toString().trim());
Это будет содержать все буквы в каждом слове, а не между словами
"Joe Black".replaceAll("\\B", " ") -> "J o e B l a c k"
Это поместит пробел для каждого символа (включая исходные пространства)
"Joe Black".replaceAll("\\B|\\b", " ") -> " J o e B l a c k "
char[] stringArray = strOrig.toCharArray();
StringBuilder sb = new StringBuilder();
for(int index=0; index < stringArray.length; index++) {
sb.append(stringArray[index]);
sb.append(" ");
}
Вы можете преобразовать Joe в char [] с помощью String toCharArray(), затем перейдите к char [], чтобы захватить char в другой char [], и когда вы добавите char ко второй char [], вы добавляете символ пробела "" ". Установите if-else в цикле для обнаружения последнего символа, чтобы вы случайно не добавили пробельный символ за последним символом. Используйте String для valueOf() в результате char [], чтобы превратить его в объект String.
Удаление последнего пространства:
String joe = "Joe";
StringBuilder sb = new StringBuilder();
String sep = "";
for (char c: joe.toCharArray()) {
sb.append(sep).append(c);
sep = " ";
}
System.out.println(sb.toString());