Solución:
Esto debería funcionar. Esto iterará a través de cada palabra en la cadena fuente, la invertirá usando StringBuilder
está incorporado reverse()
método y generar la palabra invertida.
String source = "Hello World";
for (String part : source.split(" ")) {
System.out.print(new StringBuilder(part).reverse().toString());
System.out.print(" ");
}
Producción:
olleH dlroW
Notas: Los comentaristas han señalado correctamente algunas cosas que pensé que debería mencionar aquí. Este ejemplo agregará un espacio adicional al final del resultado. También asume que sus palabras están separadas por un solo espacio cada una y su oración no contiene puntuación.
Conozca sus bibliotecas 😉
import org.apache.commons.lang.StringUtils;
String reverseWords(String sentence) {
return StringUtils.reverseDelimited(StringUtils.reverse(sentence), ' ');
}
Debes hacer esto en cada palabra después de ti. split
en una array
de palabras.
public String reverse(String word) {
char[] chs = word.toCharArray();
int i=0, j=chs.length-1;
while (i < j) {
// swap chs[i] and chs[j]
char t = chs[i];
chs[i] = chs[j];
chs[j] = t;
i++; j--;
}
return String.valueOf(chs);
}
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)