UNIVERSIDAD DE PANAMÁ CENTRO REGIONAL DE VERAGUAS. FACULTAD INFORMÁTICA ELECTRÓNICA Y COMUNICACIÓN ESCUELA INGENIERÍA EN INFORMÁTICA. LICENCIATURA EN INFORMÁTICA PARA LA GESTIÓN EDUCATIVA Y EMPRESARIAL. ASIGNATURA PROGRAMACIÓN IV II SEMESTRE I I AÑO INFORME DE LABORATORIO #1(MANEJO DEL OBJETO STRING) REALIZADO POR: JULIO FLORES 9-728-2148 JOSÉ MENDOZA 9-724-363 PROFESOR DIEGO SANTIMATEO
FECHA DE ENTREGA 5 DE SEPTIEMBRE DE 2008
Laboratorio semana #2: manejo del objeto String Objetivo: Con este laboratorio se espera que los y las discentes puedan apropiarse o internalizar el manejo de un objeto. Proceso: use su editor de texto para crear el programa fuente que aparece a continuación. public class StringManejo{ public static void main(String[] args){ String string1 = "Ver"; int tam; if (string1.length() > 5) { System.out.println("La cadena tiene mas de 5 caracteres"); } else { System.out.println("La cadena:" + string1 +" tiene 5 o menos caracteres"); } }// fin del main } // fin de la clase StringManejo Experimente: 1. Compile y use la MVJ para probar el then y else del if. Modifique para que en el then se despliegue el valor de la cadena como ocurre en el else. 2. Cree otro objeto String con el nombre string2, asígnele un valor y verifique si las cadenas son iguales despliegue un mensaje. ¿Qué método necesita? 3. Use las referencias: a)http://java.sun.com/docs/books/tutorial/java/data/strings.html b)http://jungla.dit.upm.es/~pepe/libros/vademecum/html/Stringclasejavalang String.html c)http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/string.h tm d)http://www.cica.es/formacion/JavaTut/Cap3/string.html Como apoyo para elaborar un programa que use cinco (5) métodos de la clase String, explique para que sirva cada método. 4. Elabore un programa que tome una cadena de caracteres y la despliegue en el orden inverso de sus caracteres. ¿Qué métodos utilizó? ¿Con cuantos objetos trabajó? 5. Utilice un arreglo de objetos String (String [] MiArray = new String [5] ;) para almacenar cinco cadenas de caracteres.Construya un programa que despliegue cada elemento del arreglo en el orden inverso de sus caracteres. 6. ¿Qué diferencias existen entre: a) String [] MiArray = new String [5]; b) char [] MiArray = new char [5]; ¿Que papel juega new en las declaraciones anteriores? Presente al facilitador un documento con sus observaciones y comentarios para cada caso. Publique en el grupo Scribd.com el informe (Informe lab3) de su laboratorio.
RESULTADOS DE LAS EXPERIENCIAS
Experimento # 1: En la primera ejecución del programa fuente observamos que el else se ejecuto y desplegó en pantalla el mensaje el cual estaba concatenado con la cadena string1 debido a que esta no cumplía la condición. Experimento # 2: Creamos otro objeto de tipo string con el nombre string2, el cual le asignamos un valor y lo comparamos con la otra cadena. El método que utilizamos fue equalsIgnoreCase; el cual determina si una cadena es igual a otra sin tomar en cuenta de que sean mayúsculas o minúsculas. Creamos una variable de tipo boolean para que recibiera los resultados del método equalsIgnoreCase y comparar esa variable en un if. Experimento # 3: Elaboramos un programa fuente con cinco métodos string diferentes los cuales definiremos a continuación: •
Método Substring: Consiste en extraer una sub-cadena de una cadena desde la posición que se le indica.
•
Método charAt: Este método consiste en extraer de la cadena el carácter que se encuentra en la posición indicada.
•
Método indexOf: Consiste en indicar en qué posición se encuentra el carácter (o cadena) indicado por primera vez, el cual lo realiza buscando desde el principio de la cadena hasta donde encuentre el carácter.
•
Método lastIndexOf: Consiste en indicar en qué posición se encuentra el carácter (o cadena) indicado por primera vez, lo cual lo realiza buscando desde el final de la cadena.
•
Método compareTo: Este método consiste en comparar dos cadenas lexicografico con respecto al abecedario la misma devuelve: 1. Un valor negativo si A es anterior a B. 2. Cero si ambas son iguales 3. Un valor positivo si A es posterior a B.
Experimento #4: Elaboramos el programa para invertir una cadena el cual utilizamos dos métodos length y charAt. El método length lo utilizamos para calcular la longitud de la cadena para recorrer el for y el método charAt lo utilizamos para extraer de la cadena el carácter que se encontraba en la posición indicada, creamos un for para ir recorriendo carácter por carácter la cadena hasta llegar a la posición cero y la vez ir concatenando el carácter que contenía cada posición para lograr el orden inverso de la cadena original. Trabajamos con tres objetos string1, x, CadenaInvertida.
Experimento #5: Creamos el arreglo de las cinco cadenas y para invertir cada una de las cadenas del arreglo utilizamos el método del experimento anterior, utilizamos un ciclo for para concatenar cada carácter de la cadena, el cual estaba dentro de otro ciclo for para que desplegar la cadena concatena invertida. El ciclo externo le indicaba la posición de la cadena con la que el ciclo interno debía trabajar (concatenar los caracteres). Cunado el ciclo interno terminaba de concatenar, salía y se desplegaba la cadena invertida y luego el ciclo externo se incrementaba. Experimento #6: La diferencia entre un new String [5] y new char [5] es que el primero crea espacios necesarios para cinco cadenas y la segunda es que le asigna los espacios necesarios para cinco caracteres. El new en las declaraciones anteriores asigna la memoria necesaria para cada objeto creado.