UNIVERSIDAD DE PANAMÁ CENTRO REGIONAL UNIVERSITARIO DE VERAGUAS FACULTAD DE INFORMÁTICA, ELECTRÓNICA Y COMUNICACIÓN ESCUELA DE INGENIERÍA EN INFORMÁTICA CARRERA: LICENCIATURA DE INGENIERÍA EN INFORMÁTICA
LABORATORIO # 2
PROGRAMACIÓN III PROGRAMACIÓN ORIENTADA A OBJETOS
TEMA: MANEJO DEL OBJETO “String”
PRESENTADO POR LA ESTUDIANTE: EUFEMIA BUITRAGO 2-719-2461
PROFESOR: DIEGO SANTIMATEO
FECHA DE ENTREGA: VIERNES, 5 DE SEPTIEMBRE DE 2008.
ÍNDICE I. INTRODUCCIÓN II. CONTENIDO 1. Compilación del Programa fuente de ejemplo brindado por el profesor en la MVJ (Máquina virtual de Java). 2. Asignación a un nuevo objeto creado “String” una cadena y comparación de la misma con la ya existente. 3. De acuerdo a la referencias bibliográficas brindadas por el profesor, programa creado con 5 métodos distintos de la clase “String”. 4. Programa con una cadena de caracteres y el despliegue del orden inverso de los mismos. 5. Programa creado junto a la utilización de los objetos String(String[] MiArray = new String[5];) para almacenar 5 cadenas de caracteres y el despliegue de cada una de ellas en el orden inverso. 6. explicación de las diferencias entre los objetos String[] MiArray = new String[5] y char[] MiArray = new char[5] junto al papel que juega new en las mismas. III.CONCLUSIÓN IV. BIBLIOGRAFÍA
INTRODUCCIÓN
Una “tira” o “cadena” (String) es una secuencia de caracteres, en donde podemos utilizar junto a ella algunos operadores que nos facilitarían el trabajo como lo es el operador “+” que sirve para unir dos cadenas creando una nueva cadena. En el presente informe de laboratorio muestro la utilidad que tiene la clase “String” en distintas situaciones. Como lo es en operaciones básicas junto a algunos métodos asociados como lo son el length(), equals(), charAt(), getChars(), startsWith() y endsWith() .
ESTE EL CÓDIGO BRINDADO POR EL PROFESOR PARA MODIFICAR: 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 1. Compile y use la MVJ para pruebar el then y else del if. Modifique para que en el then se despliegue el valor de la cadena como ocurre en el else. public class StringManejo{ public static void main(String[] args){ String string1 = "Caminar"; 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 Este problema muestra un mensaje que indicador de que la cadena tiene menos de 5 caracteres. Lo que da a ver que el mismo cumple la condición del else. A diferencia del anterior, en este problema se modifico la cadena de string1 por una con mas de 5 caracteres.
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? public class StringManejo{ public static void main(String[] args){
}
String string1 = "Caminar"; String string2 = "Correr"; int tam; if ("Caminar".equals(string2)) { System.out.println("Las cadenas son iguales"); } else { System.out.println("Las cadenas no son iguales"); } }// fin del main // fin de la clase StringManejo
Existen muchos métodos para comparar dos cadenas, pero en este caso yo utilice el método equals() que tiene la función de comparar dos cadenas sin tomar en cuenta las mayúsculas ni minúsculas.
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/StringclasejavalangString.html c)http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/string.htm 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 sirve cada método. // Este programa demuestra los métodos length, charAt, getChars, startsWith y endsWith // de la clase String. public class VariosString { public static void main( String args[] ) { String string1 = "Empezar"; char arregloChar[] = new char[ 4 ];
String string2 = " "; String string4= " "; //Nuevo String cadenas [] = { "empezo", "empezando", "termino", "terminando" }; int i; //Método length System.out.println("string1 es:" + string1); System.out.println("La longitud de string1 es:" + string1.length()); //Método charAt, iterar a través de los caracteres en string1 y mostrar al revés
string2 +="La cadena invertida es: "; for (i = string1.length() - 1; i >= 0; i-- ) string2 += string1.charAt( i ) + " "; //Método getChars, copiar caracteres de la cadena a arregloChar string1.getChars( 0, 4, arregloChar, 0 ); string2 += "\nEl arreglo de caracteres es: "; for (i = 0; i < arregloChar.length; i++ ) string2 += arregloChar[ i ]; System.out.println(string2); //Método startsWith for (i = 0; i < cadenas.length; i++ ) if ( cadenas[ i ].startsWith( "em" ) ) string4 += "\"" + cadenas[ i ] + "\" empieza con \"em\"\n"; //Método startsWith, empezando desde la posicion for (i = 0; i < cadenas.length; i++ )
2 de la cadena
if ( cadenas[ i ].startsWith( "pez", 2 ) ) string4 += "\"" + cadenas[ i ] + "\" empieza con \"pez\" en la posicion 2\n"; //Método endsWith for (i = 0; i < cadenas.length; i++ ) if ( cadenas[ i ].endsWith( "do" ) ) string4 += "\"" + cadenas[ i ] + "\" termina con \"do\"\n"; System.out.println(string4);// }//fin del main } //fin de la clase VariosString Este programa demuestra distintos métodos como lo son el: length(), que tiene la función de devolver el número de caracteres de la cadena. charAt(), que tiene la función de devolver el carácter en la posición especificada. getChars(), que tiene la función de copiar los caracteres indicados en la posición indicada de un array de caracteres. startsWith(), que tiene la función de indicar si un string comienza con otro string o no. y endsWith(), que tiene la función de indicar si un string finaliza con otro string o no.
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ó? public class inversion { public static void main( String args[] ) { String string1 = "Caminar"; String cadinv = "La cadena del string1 invertida es: "; int i; for(i=string1.length()-1;i>=0;i--) cadinv=cadinv + string1.charAt(i) + " "; System.out.println(cadinv); } //fin del main } // fin de la clase inversion En este programa utilice los métodos length() que tiene la función de devolver el número de caracteres de la cadena; y junto a él el método charAt() que tiene la función de devolver el carácter en la posición específicada. Trabaje con un objeto solamente.
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. //Este programa alamacena 5 cadenas de caracteres y despliega cada //elemento del arreglo en el orden inverso public class ArregloChar { public static void main(String[] args) { int i; String ArregloChar[]=new String[5]; ArregloChar nuevo= new ArregloChar(); ArregloChar[0]="Estudiante"; ArregloChar[1]="Eufemia"; ArregloChar[2]="Damaris"; ArregloChar[3]="Buitrago"; ArregloChar[4]="Salado"; for(i=0;i<5;i++) { nuevo.arreglo(ArregloChar[i]); System.out.print("\n"); } }//fin del main public void arreglo(String arregloinv){ int i; for(i=arregloinv.length()-1;i>=0;i--) System.out.print(arregloinv.charAt(i));
} }//fin de la clase ArregloChar
6. ¿Qué diferencias existen entre: a)String[] MiArray = new String[5]: La función de este método en la presente declaración es la de guardar 5
cadenas en un arreglo. b)char[] MiArray = new char[5]: La función de este método en la presente declaración es la de guardar 1 cadena de 5 caracteres en un arreglo. ¿Qué papel juega new en las declaraciones anteriores?
El new en las declaraciones anteriores juega el papel de crear un objeto nuevo.
CONCLUSIÓN
En el informe presentado comprendí como funciona la maquina virtual de Java y como se compila y ejecuta un programa en la misma. A la ves el mismo me sirvió para aprender como se utilizaba la clase String en un programa en Java. Una de las cosas que logre aprender fue a aplicar distintos métodos de la clase String para realizar correctamente algunas operaciones básicas de ejemplo.
WEBGRAFÍAS
http://casidiablo.net/codigo-ejemplos-de-cadenas-y-caracteres-en-java-1/
http://jcl.impresart.net/recursos/CLASE_VECTOR.pdf