Invertir cadena en Java con ciclos y StringBuilder

Invertir una cadena o String en Java

En este post voy a explicar dos maneras de invertir o “reversear” una cadena en Java. Es decir, dada una cadena, obtener la cadena al revés o la cadena invertida.

Invertir cadena en Java con ciclos y StringBuilder
Invertir cadena en Java con ciclos y StringBuilder

Estos dos métodos para invertir una cadena en Java funcionan igual pero están programados de distinta manera. El primero utiliza un ciclo for para iterar la cadena, y el segundo método llama a una función de la clase StringBuilder.

Nota: recomiendo leer cómo escanear datos por teclado en Java.

Algoritmo para invertir una cadena en Java

El algoritmo es sencillo, hay que recorrer la cadena original carácter por carácter y en cada iteración concatenar el carácter a otra cadena limpia. Eso sí, la iteración debe ser al revés; es decir, empezar por el final de la cadena.

Pongamos de ejemplo la palabra “hola“. Si la recorremos al revés, comenzamos por la letra a y la concatenamos a la nueva; luego hacemos lo mismo con la l, la o y la h. Finalmente la nueva cadena tendrá la palabra aloh.

Para obtener el carácter en determinada posición se usa charAt, y para concatenar se utiliza el operador +=.

De esta manera podemos invertir una cadena en Java. Ya veremos otro método que no usa ciclos y que llama a una función de StringBuilder.

Invertir cadena en Java con ciclos

Veamos el primer método para invertir una cadena en Java. Aquí el código:

Declaramos una cadena (que puede venir de cualquier lugar) y una cadena vacía. Luego recorremos la primera de fin a principio (para obtener su longitud usamos length()) y concatenamos. Finalmente imprimimos la cadena invertida.

Invertir cadena con StringBuilder

Ahora veamos el segundo método que no lleva ninguna codificación de algoritmos, sino una simple llamada a un método de StringBuilder.

Como vemos, la clase StringBuilder (que sirve para muchísimas cosas más) ya tiene un método llamado reverse, el cual solamente tenemos que llamar.

Eso sí, eso no regresa una cadena, por eso tenemos que llamar a toString.

Probar y descargar ejercicios

Puedes descargar el código fuente y probarlo por ti mismo; asegúrate de instalar Java y opcionalmente instala NetBeans.

También puedes probarlo en línea.

Invertir cadena con ciclos

Invertir cadena con StringBuilder

Eso es todo por el momento. Te invito a ver más sobre Java aquí.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario