Aquí hay una forma de implementar la inversión de cadenas en 5 en Java.
1. matrices implementan inversión de cadena
// La matriz implementa la cadena de inversión de la cadena pública reverseByArray () {if (str == null || str.length () == 1) {return null; } char [] ch = str.toCarArray (); // Convertir una cadena en una matriz de caracteres para (int i = 0; i <ch.length/2; i ++) {char temp = ch [i]; ch [i] = ch [ch.length-i-1]; ch [ch.length-i-1] = temp; } return new String (ch); }2. Se implementa la inversión de la cadena
// Use la pila para implementar la cadena de inversión de cadena de cadena inversa reverseByStack () {if (str == null || str.length () == 1) {return null; } Pila <caracteres> stack = new Stack <arport> (); char [] ch = str.toCarArray (); // Convertir cadenas en una matriz de caracteres para (char c: ch) {stack.push (c); // Cada carácter, presione la pila} para (int i = 0; i <ch.length; i ++) {ch [i] = stack.pop (); // elimina el objetivo superior de este stack} regreso nuevo cadena (ch); } 3.
// Use el transbordador inverso para implementar la cadena de inversión de cadena de cadena inversa reverseBySort () {if (str == null || str.length () == 1) {return null; } StringBuffer sb = new StringBuffer (); for (int i = str.length () -1; i> = 0; i--) {sb.append (str.charat (i)); // use stringbuffer para empalmar caracteres de derecha a izquierda} return sb.ToString (); } 4. La operación de bit realiza la inversión de la cadena
// use la operación de bit para implementar la cadena de inversión de cadena de cadena inversa reverseByBit () {if (str == null || str.length () == 1) {return null; } char [] ch = str.toCarArray (); // Convertir cadenas en matriz de caracteres int len = str.length (); para (int i = 0; i <len/ 2; i ++) {ch [i]^= ch [len- 1- i]; ch [len- 1- i]^= ch [i]; ch [i]^= ch [len- 1- i]; } return new String (ch); } 5. Implementar recursivamente la inversión de cadenas
// use la recursión para implementar la inversión de cadena de cadena pública reverseByRecursive (String str) {if (str == null || str.length () == 0) {return null; } if (str.length () == 1) {return str; } else {// sain la cadena del subíndice de 1, devuelve reverseByRecursive (str.substring (1)) + str.charat (0); }} VI. Prueba
Prueba de clase pública {public static void main (string [] args) {String s = "123456"; Reverso r = nuevo reverso (s); System.out.println (R.RaverseByArray ()); System.out.println (R.RavenessByStack ()); System.out.println (R.Ravenessebysort ()); System.out.println (R.RverseByBit ()); System.out.println (R.ReverseByRecursive (s)); }}7. Resultados
8. Todos los códigos utilizados para la inversión de cadenas
clase pública reversa {String private str = null; Public Reverse (String Str) {this.str = str; } // Cadena de implementación de matriz Inverse Public String reverseByArray () {if (str == null || str.length () == 1) {return null; } char [] ch = str.ToCarArray (); // Convertir la cadena en una matriz de caracteres para (int i = 0; i <ch.length/2; i ++) {char temp = ch [i]; ch [i] = ch [ch.length-i-1]; ch [ch.length-i-1] = temp; } return new String (ch); } // Use la pila para implementar la cadena de inversión de cadena inversa reverseByStack () {if (str == null || str.length () == 1) {return null; } Pila <caracteres> stack = new Stack <arport> (); char [] ch = str.toCarArray (); // Convertir cadenas en una matriz de caracteres para (char c: ch) {stack.push (c); // Cada carácter, presione la pila} para (int i = 0; i <ch.length; i ++) {ch [i] = stack.pop (); // elimina el objetivo superior de este stack} regreso nuevo cadena (ch); } // Use el transbordador inverso para implementar la cadena de inversión de cadena de cadena inversa reverseBySort () {if (str == null || str.length () == 1) {return null; } StringBuffer sb = new StringBuffer (); for (int i = str.length () -1; i> = 0; i--) {sb.append (str.charat (i)); // use stringbuffer para empalmar caracteres de derecha a izquierda} return sb.ToString (); } // Use las operaciones de bit para implementar la inversión de cadena public String reverseByBit () {if (str == null || str.length () == 1) {return null; } char [] ch = str.toCarArray (); // Convertir cadenas en matriz de caracteres int len = str.length (); para (int i = 0; i <len/ 2; i ++) {ch [i]^= ch [len- 1- i]; ch [len- 1- i]^= ch [i]; ch [i]^= ch [len- 1- i]; } return new String (ch); } // Use la recursión para implementar la cadena reverseByRecursive (String Str) {if (str == null || str.length () == 0) {return null; } if (str.length () == 1) {return str; } else {// sain la cadena del subíndice de 1, devuelve reverseByRecursive (str.substring (1)) + str.charat (0); }}}Las 5 formas anteriores de implementar la reversión de las cadenas en Java son todo el contenido que comparto con usted. Espero que pueda darle una referencia y espero que pueda apoyar más a Wulin.com.