El método getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin) de la clase StringBuilder copia los caracteres comenzando en el índice dado:srcBegin a index:srcEnd-1 de la string contenida por StringBuilder en una array de caracteres pasados como parámetro funcionar.
- Los caracteres se copian de StringBuilder en la array dst[] comenzando en index:dstBegin y terminando en index:dstbegin + (srcEnd-srcBegin) – 1.
- El primer carácter que se copiará de StringBuilder a la array está en el índice srcBegin y el último carácter que se copiará está en el índice srcEnd-1.
- El número total de caracteres a copiar es igual a srcEnd-srcBegin.
Sintaxis:
public void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
Parámetros: Este método acepta cuatro parámetros diferentes:
- srcBegin: representa el índice sobre el que tenemos que empezar a copiar.
- srcEnd: representa el índice sobre el que tenemos que dejar de copiar.
- dst: representa la array en la que copiar los datos.
- dstBegin: representa el índice de la array de destino. Comenzamos a pegar los datos copiados.
Valor devuelto: este método no devuelve nada.
Excepción: este método arroja una excepción StringIndexOutOfBoundsException si:
- srcBegin < 0
- dstBegin < 0
- inicio_origen > fin_origen
- srcEnd > this.longitud()
- dstBegin+srcEnd-srcBegin > dst.longitud
Los siguientes programas demuestran el método getChars() de la clase StringBuilder:
Ejemplo 1:
// Java program to demonstrate // the getChars() 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()); // create a char Array char[] array = new char[7]; // get char from index 0 to 7 // and store in array start index 0 str.getChars(0, 7, array, 0); // print char array after operation System.out.print("Char array contains : "); for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } } }
String = WelcomeGeeks Char array contains : W e l c o m e
Ejemplo 2:
// Java program to demonstrate // the getChars() Method. import java.util.*; class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("evil dead_01"); // print string System.out.println("String = " + str.toString()); // create a char Array char[] array = new char[10]; // initialize all character to _(underscore). Arrays.fill(array, '_'); // get char from index 5 to 9 // and store in array start index 3 str.getChars(5, 9, array, 3); // print char array after operation System.out.print("char array contains : "); for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } } }
String = evil dead_01 char array contains : _ _ _ d e a d _ _ _
Ejemplo 3: Para demostrar StringIndexOutOfBoundException
// Java program to demonstrate // exception thrown by the getChars() Method. import java.util.*; class GFG { public static void main(String[] args) { // create a StringBuilder object // with a String pass as parameter StringBuilder str = new StringBuilder("evil dead_01"); // create a char Array char[] array = new char[10]; // initialize all character to _(underscore). Arrays.fill(array, '_'); try { // if start is greater then end str.getChars(5, 2, array, 0); } catch (Exception e) { System.out.println("Exception: " + e); } } }
Exception: java.lang.StringIndexOutOfBoundsException: srcBegin > srcEnd
Referencia:
https://docs.oracle.com/javase/10/docs/api/java/lang/StringBuilder.html#getChars(int, int, char%5B%5D, int)
Publicación traducida automáticamente
Artículo escrito por AmanSingh2210 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA