El método replace(int start, int end, String str) de la clase StringBuilder se usa para reemplazar los caracteres en una substring de esta secuencia con caracteres en la string especificada. La substring comienza en el inicio del índice especificado y se extiende hasta el carácter del final del índice: 1 o hasta el final de la secuencia si no existe dicho carácter. Al principio, los caracteres de la substring se eliminan y la string pasada como parámetro se inserta en lugar de esos caracteres.
Sintaxis:
public StringBuilder replace?(int start, int end, String str)
Parámetros:
Este método acepta tres parámetros:
- inicio : valor de tipo entero que se refiere al índice de inicio.
- end : valor de tipo entero que se refiere al índice final.
- str : valor de tipo de string que se refiere a la string que reemplazará los contenidos anteriores.
Devoluciones:
este método devuelve el objeto StringBuilder después de reemplazar correctamente los caracteres.
Excepción:
si el inicio es negativo, mayor que la longitud() o mayor que el final, StringIndexOutOfBoundsException.
Los siguientes programas ilustran el método java.lang.StringBuilder.replace():
Ejemplo 1:
// Java program to demonstrate // the replace() Method. class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("WelcomeGeeks"); // print string System.out.println("String = " + str.toString()); // replace Character from index 1 to 7 by "e are " StringBuilder strReturn = str.replace(1, 7, "e are "); // print string System.out.println("After Replace() String = " + strReturn.toString()); } }
Producción:
String = WelcomeGeeks After Replace() String = We are Geeks
Ejemplo 2:
// Java program to demonstrate // the replace() Method. class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("Tony Stark will die"); // print string System.out.println("String = " + str.toString()); // replace Character from index 15 to 16 by " not " StringBuilder strReturn = str.replace(15, 16, " not "); // print string System.out.println("After Replace() String = " + strReturn.toString()); } }
Producción:
String = Tony Stark will die After Replace() String = Tony Stark will not die
Ejemplo 3: cuando se pasa un índice negativo:
// Java program to demonstrate // Exception thrown by the replace() Method. class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("Tony Stark"); try { // replace Character from index -15 to 16 by "Captain America" StringBuilder strReturn = str.replace(-15, 16, "Captain America"); } catch (Exception e) { e.printStackTrace(); } } }
Producción:
java.lang.StringIndexOutOfBoundsException: String index out of range: -15 at java.lang.AbstractStringBuilder.replace(AbstractStringBuilder.java:851) at java.lang.StringBuilder.replace(StringBuilder.java:262) at GFG.main(File.java:17)
Ejemplo 4: cuando el índice de inicio pasado es mayor que el índice final:
// Java program to demonstrate // Exception thrown by the replace() Method. class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("Tony Stark"); try { // replace Character from index 5 to 3 by "Captain America" StringBuilder strReturn = str.replace(5, 3, "Captain America"); } catch (Exception e) { e.printStackTrace(); } } }
Producción:
java.lang.StringIndexOutOfBoundsException: start > end at java.lang.AbstractStringBuilder.replace(AbstractStringBuilder.java:855) at java.lang.StringBuilder.replace(StringBuilder.java:262) at GFG.main(File.java:17)
Referencias:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#replace(int, int, java.lang.String)
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA