El siguiente documento describe el código de un programa realizado bajo Java, el cual, dada una cadena de caracteres, estos son invertidos y mostrados en pantalla. A continuación se mostrará estructura del código con su respectiva explicación.
Lo que primero necesitamos obtener es dicha cadena, esto lo haremos leyendo desde el teclado:
NOTA: Recordar siempre agregar el comando “throws IOException ” al inicio de la clase main, de la forma siguiente: “public static void main (String[ ] args) throws IO Exception{ …”, por cualquier error que se pudiera llegar a presentar.
En pantalla, nos aparece un letrero con la leyenda: “Escribe una cadena de caracteres”, a continuación, la clase “String” de Java crea un array de caracteres; aquí definiremos donde serán guardados para posteriormente, mandarlos a llamar; nuestro texto normal “sCadena” y el texto invertido “sCadenaInvertida”.
El programa utiliza la clase “BufferedReader”, la cual, permite leer un buffer de una manera muy sencilla. En el buffer se almacena el flujo de datos que proviene de “System.in” con la cual leeremos la cadena. Esto se logra inicializando el buffer con “new BufferReader(new InputStreamReader(System.in))”.
Creado el objeto “BufferedReader”, nos disponemos a leer el buffer con “br.readline()”, el cual, contiene dentro ya la cadena escrita.
Después de mostrarse el mensaje : “La cadena leida es”, aparece la cadena de caracteres insertados y almacenados, mandados a llamar por “+sCadena”. A continuación se hace uso de un ciclo “for()” para recorrer el arreglo a lo largo e ir moviendo cada una de las letras celda por celda hasta acomodarlas en su posición final. El funcionamiento de esta parte se puede observar claramente en la siguiente imágen.
Una vez creado un objeto de la clase “String”, podemos obtener información relevante acerca del objeto a través de las funciones miembro. Para obtener la longitud del número de caracteres que guarda un “String” se llama a la función miembro “.length()”.
Al terminar de recorrer nuestro arreglo, “sCadena.CharAt(x)” (donde “x ” representa el incremento que esta tomando el for para recorrer dicho arreglo) hace una extración de cada caracter, es por ello que la implementamos en la operación “sCadenaInvertida” para, posteriormente, mandarla llamar.
Finalmente, la cadena invertida es almacenada en “sCadenaInvertida” y es mostrada en pantalla, ya que mandamos llamar a nuestro resultado con con “+sCadenaInvertida”.