Bienvenidos sean a este post, hoy hablaremos sobre uno de los metodos para la clase String.
Este metodo nos permite copiar los caracteres desde una cadena a un array de caracteres (char), antes de comentarlo veamos su sintaxis:
variable.getChars(inicio, final, destino, inicio destino)
Analicemos la sintaxis, primero debemos pasar desde donde comenzaremos, lo siguiente sera hasta cual caracter incluiremos, el siguiente argumento sera el array donde lo almacenaremos y por ultimo en que posicion del destino lo agregaremos, por ultimo este metodo no devuelve ningun valor pero si puede devolver la excepcion IndexOutOfBoundsException en caso de excedernos de la cantidad de posiciones del array, para entenderlo vamos a realizar el siguiente ejemplo:
getchars.java
import java.io.*;
public class getchars
{
public static void main(String[] args)
{
String cdn1 = "Bienvenidos a tinchicus.com";
char[] carac = new char[7];
try
{
cdn1.getChars(8,15,carac,0);
System.out.print("Valor copiado: ");
System.out.println(carac);
cdn1.getChars(0,cdn1.length(),carac,0);
System.out.print("Valor copiado: ");
System.out.println(carac);
}
catch (IndexOutOfBoundsException ex)
{
System.out.println("Te pasaste lindor...");
}
}
}
Primero importamos los paquetes que necesitamos para manejar excepciones, despues en nuestro programa en si primero crearemos una variable llamada cdn1 de tipo String donde almacenaremos un texto, lo siguiente sera crear un array de caracteres llamada carac donde le estableceremos una longitud de siete posiciones, en este caso usaremos un modulo try/catch para ver como trabaja con la excepcion de este metodo, para ello en el modulo del try tenemos la llamada al metodo getChars, veamos como es:
cdn1.getChars(8,15,carac,0);
Observen como al no devolver ningun valor no es necesario asignarla a ninguna variable/objeto, lo siguiente que ponemos es la posicion donde comenzara la copia y luego la siguiente posicion donde terminara de copiar, despues viene el array y por ultimo la posicion del array donde copiara todo, una vez realizado mostramos un mensaje, al no usar println no hara el salto de linea, y luego mostramos el valor copiado en carac, nuestra siguiente parte hacemos lo mismo pero en lugar de utilizar dos posiciones le decimos que comience desde el inicio y utilice todo el tamaño del texto por medio de length, el resto igual al anterior, por ultimo volvemos a mostrar tal como lo hicimos anteriormente, en el final tenemos el catch para interceptar la excepcion que devuelve el metodo en caso de ocurrir, compilemos y veamos su salida:
Nota: si necesitan saber mas sobre try/catch les recomiendo este post.
tinchicus@dbn001vrt:~/lenguajes/java$ java getchars
Valor copiado: dos a t
Te pasaste lindor...
tinchicus@dbn001vrt:~/lenguajes/java$
Observen como en el primer caso nos devolvio los caracteres copiados en carac, y al respetar las cantidades de posiciones no devolvio ninguna excepcion, en cambio para el segundo caso como nos excedimos nos devolvio el mensaje del catch.
En resumen, hoy hemos visto getChars, que es, para que sirve, como se usa y un ejemplo practico para verlo en accion tanto cuando funciona como cuando falla, espero les haya sido util sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.


Donación
Es para mantenimento del sitio, gracias!
$1.00
