Invertir una cadena de caracteres (String) en Java

JavaJavaBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En Java, una cadena de caracteres (String) es una secuencia de caracteres. En algunos casos, puede ser necesario invertir una cadena de caracteres. Esto se puede hacer utilizando el método reverse() de la clase StringBuilder o creando una nueva cadena en orden inverso. En este laboratorio, revisaremos los pasos para invertir una cadena de caracteres en Java.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java/BasicSyntaxGroup -.-> java/variables("Variables") java/BasicSyntaxGroup -.-> java/for_loop("For Loop") java/BasicSyntaxGroup -.-> java/output("Output") java/StringManipulationGroup -.-> java/strings("Strings") java/StringManipulationGroup -.-> java/stringbuffer_stringbuilder("StringBuffer/StringBuilder") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/variables -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} java/for_loop -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} java/output -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} java/strings -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} java/stringbuffer_stringbuilder -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} java/string_methods -.-> lab-117451{{"Invertir una cadena de caracteres (String) en Java"}} end

Crear una cadena de caracteres (String)

El primer paso es crear una cadena de caracteres (String) que queremos invertir. Crearemos una variable de tipo String y le asignaremos un valor de cadena de caracteres.

String str = "LabEx";

Usar StringBuilder para invertir la cadena de caracteres (String)

En este paso, usaremos el método reverse() de la clase StringBuilder para invertir la cadena de caracteres. Crearemos un nuevo objeto StringBuilder y pasaremos la cadena original como argumento. Luego, llamaremos al método reverse() en el objeto StringBuilder. Finalmente, convertiremos el objeto StringBuilder de nuevo a una cadena de caracteres (String) usando el método toString().

StringBuilder strBuilder = new StringBuilder(str);
strBuilder.reverse();
String reversedStr = strBuilder.toString();

Podemos imprimir la cadena de caracteres invertida usando el siguiente código.

System.out.println("Reversed String using StringBuilder: " + reversedStr);

Crear una nueva cadena de caracteres (String) en orden inverso

En este paso, crearemos una nueva cadena de caracteres en orden inverso. Usaremos un bucle for para iterar a través de cada carácter de la cadena original comenzando por el último carácter. Agregaremos cada carácter a un nuevo objeto String.

String newStr = "";
for(int i = str.length() - 1; i >= 0; i--) {
   newStr = newStr + str.charAt(i);
}

Podemos imprimir la cadena de caracteres invertida usando el siguiente código.

System.out.println("Reversed String using new String: " + newStr);

Código final

El código final para invertir la cadena de caracteres (String) usando StringBuilder y una nueva cadena de caracteres (String) es el siguiente.

public class ReverseString {
   public static void main(String[] args) {
      String str = "LabEx";

      // Reversing a String using StringBuilder
      StringBuilder strBuilder = new StringBuilder(str);
      strBuilder.reverse();
      String reversedStr = strBuilder.toString();
      System.out.println("Reversed String using StringBuilder: " + reversedStr);

      // Reversing a String using new String
      String newStr = "";
      for(int i = str.length() - 1; i >= 0; i--) {
         newStr = newStr + str.charAt(i);
      }
      System.out.println("Reversed String using new String: " + newStr);
   }
}

Resumen

En este laboratorio, aprendimos cómo invertir una cadena de caracteres (String) en Java usando StringBuilder y una nueva cadena de caracteres (String). También revisamos los pasos para crear una nueva cadena de caracteres (String) en orden inverso usando un bucle for. Es importante destacar que el método StringBuilder es más eficiente para cadenas de gran tamaño y debe utilizarse cuando la rendimiento es un factor a considerar.