Documente Academic
Documente Profesional
Documente Cultură
Observe que los objetos tienen distribucin FlowLayout con orientacin y separacin entre ellos por defecto. Creamos un nuevo proyecto de nombre Ejemplo01: Clic en File, New Project Ahora, creamos un nuevo paquete para nuestro proyecto. Clic derecho en el proyecto Ejemplo01, nuevo paquete de nombre ejemplo01.
07/07/2010
www.parainformaticos.com
Pgina - 1 -
Agrandamos el panel a nuestro gusto. Por defecto los paneles tienen distribucin libre (Free Design). Para cambiar de distribucin haga clic derecho en el panel, elija SetLayout y luego FlowLayout.
07/07/2010
www.parainformaticos.com
Pgina - 2 -
los nombres de variable utilizados. Para poner nombres de variable a los objetos: Clic derecho en el objeto y elegimos change variable name: btnNorte, btnSur, btnEste, btnOeste, txtSalida. Al panel y al scrollPane lo dejamos con el nombre por defecto que le pone la herramienta visual. Ahora vamos a programar la accin de cada botn: doble clic en el botn Norte o Clic derecho en el botn Norte, Events, Action, ActionPerformed:
Y nos lleva al cdigo java para escribir lo que est en negrita. private void btnNorteActionPerformed(java.awt.event.ActionEvent evt) { txtSalida.setText("Norte"); } Ya puede ejecutar su aplicacin presionando F6. Ahora usted programe los dems botones para completar la aplicacin. Clase GridLayout : Jerarqua de clases y herencia:
07/07/2010
www.parainformaticos.com
Pgina - 3 -
java.awt.GridLayout La clase GridLayout es un administrador de distribucin que distribuye a los objetos en forma de tabla (filas por columnas). El contenedor es dividido en rectangulos de igual tamao y coloca un objeto en cada rectangulo. Ejemplo 02: Disee una aplicacin que aplique distribucin GridLayout de 2 filas por 1 columna para el panel principal y distribucin GridLayout de 1 fila por 4 columnas para el panel de la primera fila. Luego, coloquer 4 botones en ste segundo panel. En la segunda fila coloque un area de texto sobre un scroll.
Creamos un nuevo proyecto de nombre Ejemplo02 y un nuevo paquete de nombre ejemplo02. Ahora, clic derecho en el paquete creado (ejemplo02) elegimos New JFrame Form de nombre Principal. Si quiere poner un titulo en la ventana, haga clic en el frame y en la ventana de propiedades ubique ttulo y escriba GridLayout. Ahora colocamos un panel (jPanel1) en el frame al quel le aplicamos distribucin GridLayout. En la ventana de propiedades fijamos las filas y columnas para la distribucin GridLayout del panel : (1 columna, 2 filas): HorizontalGap y VerticalGap sirven para definir el espacio entre objetos horizontal y verticalmente. En este caso lo dejamos con 0. Seleccionamos el jPanel1 para hacer el siguiente diseo:
07/07/2010
www.parainformaticos.com
Pgina - 4 -
jPanel1 con distribucin GridLayout de 1 columna, 2 filas. En la primera fila colocamos otro panel (jPanel2) con distribucin GridLayout de 4 columnas, 1 fila donde colocamos los botones. En la segunda fila colocamos un rea de texto. En la ventana de navegacin seleccionamos el panel jPanel2 sobre el cual pondremos 4 botones. Automticamente se acomodan en una sola fila: Observe la distribucin de los objetos en el frame y los nombres de variable utilizados. La ventana de diseo quedara as:
Ahora programamos la accin de cada botn. Haga doble clic en el botn Norte y escriba lo que esta en negrita: private void btnNorteActionPerformed(java.awt.event.ActionEvent evt) { txtSalida.setText("Norte"); } Ya puede ejecutar su aplicacin presionando F6 Ahora usted programe los dems botones para completar la aplicacin.
07/07/2010
www.parainformaticos.com
Pgina - 5 -
Clase BorderLayout : Jerarqua de clases y herencia: java.lang.Object java.awt.BorderLayout Por herencia, la clase BorderLayout y sus clases descendientes (subclases directas) podrn utilizar los datos y/o mtodos de la clase Object. Una distribucin BorderLayout arregla y dimensiona sus componentes en 5 regiones: norte, sur, este, oeste, y centro. Cada regin no puede contener ms de un componente, y es identificada por su correspondiente constante NORTH, SOUTH, EAST, WEST, y CENTER. Cuando agregue un componente al container con BorderLayout, use una de stas constantes: BorderLayout.CENTER, BorderLayout.NORTH, etc. Ejemplo 03: Disee una aplicacin utilizando distribucin BorderLayout (norte, sur, este, oeste y centro) para obtener la siguiente pantalla:
Nuevo Proyecto de nombre Ejemplo03, nuevo paquete de nombre ejemplo03. Ahora, clic derecho en el paquete creado (ejemplo03) elegimos New JFrame Form de nombre Principal.
07/07/2010
www.parainformaticos.com
Pgina - 6 -
Si quiere poner un titulo en la ventana, haga clic en el frame y en la ventana de propiedades ubique ttulo y escriba BorderLayout. Luego colocamos un panel en el centro del frame y con clic derecho elegimos setLayout tipo BorderLayout Seleccionamos en la parte izquierda el panel (jPanel1) con distribucin BorderLayout y colocamos los botones, y el rea de texto. Observe que automticamente se van colocando los objetos en los puntos cardinales del panel. Cambiamos el texto de los botones ( clic derecho, edit text) y le cambiamos el nombre de variable (clic derecho, change variable name ) Observe la distribucin de los objetos y los nombres de variable utilizados.
Ahora, damos doble clic en el botn Norte para programar su accin, escribiendo lo que aparece en negrita: private void btnNorteActionPerformed(java.awt.event.ActionEvent evt) { txtSalida.setText("Norte"); } Ya puede ejecutar su aplicacin presionando F6
07/07/2010
www.parainformaticos.com
Pgina - 7 -
Ahora usted programe los dems botones para completar la aplicacin. Distribucin Libre (Free Layout) Esta distribucin es la que est configurada por defecto para todos los contenedores. Consiste en que la colocacin de los componentes en un contenedor sea a libertad del programador. Esta distribucin es simple y a veces rpida de hacer, sin embargo, no siempre se logran diseos personalizados por lo que ser recomienda el uso intensivo de las distribuciones anteriores. Ejemplo 04: Disee una aplicacin utilizando una distribucin libre para 4 botones y un area de texto similar a la que se muestra en la siguiente figura:
Nuevo proyecto de nombre Ejemplo04, nuevo paquete de nombre ejemplo04, clic derecho en el paquete ejemplo04 y elegimos nuevo JFrame Form de nombre Principal donde hacemos el siguiente diseo: Por defecto los contenedores tienen distribucin libre (Free Design). Lo comprobamos haciendo clic derecho en el frame, setLayout. Ahora, colocamos un panel, 4 botones, un scroll y una area de texto distribuyendolos libremente: Cambiamos el texto y los nombres de variables de los objetos haciendo clic derecho Edit Text y clic derecho Change variable name respectivamente.
07/07/2010
www.parainformaticos.com
Pgina - 8 -
Observe en la parte inferior izquierda la distribucin de los objetos y los nombres de variable utilizados. Utilice la propiedad ttle del JFrame para escribir un ttulo (Free Design). Ahora, para programar la accin del botn Uno hacemos doble clic en l y NetBeans nos lleva al cdigo java donde debemos escribir lo que est en negrita: private void btnUnoActionPerformed(java.awt.event.ActionEvent evt) { txtSalida.setText("Uno"); } Ya puede ejecutar su aplicacin presionando F6 Ahora usted programe los dems botones para completar la aplicacin. La distribucin BoxLayout es muy similar a la distribucin FlowLayout. La diferencia es que mientras FlowLayout distribuye los objetos en forma centrada, BoxLayout distribuye los objetos cubriendo todo el ancho, o alto, del panel que tiene dicha distribucin. Clase Color : Jerarqua de clases y herencia: java.lang.Object java.awt.Color Por herencia, la clase Color y sus clases descendientes (subclases directas) podrn utilizar los datos y/o mtodos de la clase Object. La clase Color es usada con el formato RGB. Cualquier color tiene un valor entero entre 0 y 255 que representa la intensidad del color. Un valor 255 significa que el color es completamente transparente
07/07/2010
www.parainformaticos.com
Pgina - 9 -
Nuevo proyecto de nombre Ejemplo05, nuevo paquete de nombre ejemplo05 y nuevo JFrame Form de nombre Principal donde hacemos el siguiente diseo: Colocamos un panel (jPanel1) con distribucin BorderLayout. Al sur colocamos un botn Combinar y al Este le ponemos una etiqueta En la parte oeste colocamos otro panel (jPanel2) con distribucin GridLayout de 2 columnas, 3 filas. Observe que ste panel se ve como una linea vertical de color naranja. Por eso, en ste nuevo
07/07/2010 -
www.parainformaticos.com
Pgina - 10
La
razn por la que se dejar vaco es porque lo llenaremos a travs de cdigo java. Haga lo mismo con los dems ComboBox hasta lograr el siguiente diseo:
Ahora, hacemos clic en el botn Source para ir al cdigo fuente y en el constructor del panel (Principal) llenamos los ComboBox con nmeros del 1 al 255 cada uno. Escriba lo que est en negrita: public Principal() { initComponents(); // llenamos los comboBox for (int i=1; i<256; i++) jComboBox1.addItem(String.valueOf(i)); for (int i=1; i<256; i++) jComboBox2.addItem(String.valueOf(i));
07/07/2010 -
www.parainformaticos.com
Pgina - 11
Seleccionamos la etiqueta para modificar algunas propiedades: Le quitamos el texto y le cambiamos el nombre (clic derecho, change variable name) para ponerle lblColor. Ubicamos la propiedad opaque para marcar el check Recuerde que para aplicar color de fondo a una etiqueta sta debe tener la propiedad opaque marcada, de lo contrario el color de fondo no ser reconocido.
Ahora doble clic en el botn Combinar para programar su accin. Escriba slo lo que est en negrita: private void btnCombinarActionPerformed(java.awt.event.ActionEvent evt) { int r = jComboBox1.getSelectedIndex(); int g = jComboBox2.getSelectedIndex(); int b = jComboBox3.getSelectedIndex(); // establece color de fondo personalizado a la caja de texto lblColor.setBackground(new Color(r,g,b)); } Si le marca error en Color es porque NetBeans an no ha identificado la librera de dicha clase. Ubique el cursor en la palabra Color y presione ctrl + barra espaciadora, luego enter. Si no soluciona el problema, hga clic en Source y elija complete code.
07/07/2010 -
www.parainformaticos.com
Pgina - 12
Bien, ahora que no hay errores, ya puede ejecutar su aplicacin presionando F6 Si tiene alguna duda sobre el diseo, le recomendamos revise el manual de uso de NetBeans en el anexo C del libro. Clase Double: Jerarqua de clases y herencia: java.lang.Object java.lang.Number java.lang.Double Double es una clase final por lo que no puede ser heredada. Un objeto de tipo Double contiene un campo cuyo tipo es double primitivo. Adems, sta clase provee varios mtodos para convertir un dato double a String y viceversa. Tambin provee de otros atributos y mtodos de mbito static que son de utilidad en nuestras aplicaciones. A continuacin un resumen del contenido de la clase Double. Resumen de datos static double MAX_VALUE Una constante que tiene al mayor valor real positivo finito posible, (2-2-52)21023. static double MIN_VALUE Una constante que tiene el menor valor real positivo diferente de cero, 2-1074. static double NaN Una constante que tiene un valor real que no es un nmero (NaN).
static double NEGATIVE_INFINITY Una constante que tiene el valor negativo infinito de tipo real. static double POSITIVE_INFINITY Una constante que tiene el valor positivo infinito de tipo real. static int SIZE Constructores Double(double value) Double(String s) Construye un nuevo objeto Double que representa el double primitivo dado como parametro. Construye un nuevo ojbeto Double que representa un valor El nmero de bits utiilzados para representar un valor real.
07/07/2010 -
www.parainformaticos.com
Pgina - 13
real primitivo de la cadena dada como parmetro. Resumen de mtodos byte byteValue() Retorna el valor primitivo byte (castea o enmascara el Double a byte). static int compare(double d1, double d2) Compara los dos valores reales dados como parmetros. Retorna 0 si son iguales, 1 si d1 es mayor a d2 y -1 si d1 es menor a d2. int compareTo(Double anotherDouble) Compara numericamente con otro objeto Double. Retorna 0 si son iguales, 1 si ste valor es mayor al valor del objeto parmetro y -1 si es lo contrario. double doubleValue() Retorna el valor primitivo double (castea o enmascara el Double a double) boolean equals(Object obj) Compara ste objeto con el indicado como parmetro. float floatValue() Retorna el valor primitivo float (castea o enmascara el Double a float) int intValue() Retorna el valor primitivo int (castea o enmascara el Double a int). boolean isInfinite() Retorna true si ste valor Double es infinitamente grande en magnitud, false en caso contrario. static boolean isInfinite(double v) Retorna true si el numero dado como parmetro es infinitamente grande en magnitud, false en caso contrario. boolean isNaN() Retorna true si ste valor Double es no numrico (NaN), false en caso contrario.. static boolean isNaN(double v) Retorna true si el nmero dado como parmetro es no numrico (NaN) , false en caso contrario. long longValue() Retorna el valor primitivo long ( castea o enmascara el Double a long).
07/07/2010 -
www.parainformaticos.com
Pgina - 14
static double parseDouble(String s) Retorna un nuevo valor primitivo double equivalente a la cadena indicada como parmetro. short shortValue() Retorna el valor primitivo short (castea o enmascara el Double a short). static String toHexString(double d) Retorna una cadena en representacin hexadecimal del valor double dado como parmetro. String toString() Retorna como String el valor real de ste objeto Double. static String toString(double d) Retorna como String el valor double dado como parmetro. static Double valueOf(double d) Retorna una instancia Double equivalente al valor double dado como parmetro. static Double valueOf(String s) Retorna un objeto Double manteniendo el valor double representado por la cadena dada como parmetro. Ejemplos: double x; String s=123.19; x = Double.parseDouble(s); s = Double.toString(45.3); x = Double.MAX_VALUE; x = Double.MIN_VALUE; // 123.19 como real // 45.3 como cadena // valor real mximo positivo // valor real mnimo positivo no cero.
Clase Font : Jerarqua de clases y herencia: java.lang.Object java.awt.Font Por herencia, la clase Font y sus clases descendientes (subclases directas) podrn utilizar los datos y/o mtodos de la clase Object.
07/07/2010 -
www.parainformaticos.com
Pgina - 15
07/07/2010 -
www.parainformaticos.com
Pgina - 16
Nuevo Proyecto de nombre Ejemplo06, nuevo paquete de nombre ejemplo06, nuevo JFrame Formde nombre Principal donde colocamos un panel (jPanel1) con el siguiente diseo: Seleccionamos el frame, ubicamos la propiedad title y escribimos un ttulo. (jPanel1) con distribucin BorderLayout. En el Sur ponemos el botn Aplicar, en el Oeste ponemos otro panel (jPanel2) con distribucin GridLayout de 1 columna, 3 filas donde colocamos 3 comboBox y en el Centro colocamos un rea de Texto. Utilice la propiedad border para colocar un borde con ttulo en cada comboBox. Utilice la propiedad model para administrar el contenido del primer comboBox (cboFuente): Monospaced, Arial, Arial Black, Garamond, Comic sans MS, Times New Roman. Utilice la propiedad model para administra el contenido del segundo comboBox (cboEstilo): Normal, Negrita, Italic, Negrita Italic. Utilice la propiedad model para administrar el contenido del tercer ComboBox (cboTamao) de tal manera que quede vaco. Utilice la propiedad text del rea de Texto para escribir la palabra Hola. Observe la distribucin de los objetos y los nombres de variable utilizados.
07/07/2010 -
www.parainformaticos.com
Pgina - 17
Vamos al cdigo fuente (source) para poner el contenido al cboTamao con el siguiente cdigo java que est en negrita: public Principal() { initComponents(); // contenido al cboTamao for (int i=2; i<=120; i+=5) cboTamao.addItem(String.valueOf(i)); } Regresamos al diseo y hacemos doble clic en el botn Aplicar Fuente para programar su accin. Escriba lo que est en negrita y a continuacin desarrolle los mtodos propios utilizados: private void btnAplicarActionPerformed(java.awt.event.ActionEvent evt) { // leer fuente, estilo, tamao String fuente = leeFuente(); int estilo = leeEstilo(); int tamao = leeTamao(); // crear fuente segn atributos leidos Font miFuente = new Font(fuente,estilo,tamao); // aplicar nueva fuente al JTextArea txtSalida.setFont(miFuente); } //-------------String leeFuente() { return cboFuente.getSelectedItem().toString(); }
07/07/2010 -
www.parainformaticos.com
Pgina - 18
Eje X
800
Eje Y
07/07/2010 -
600
www.parainformaticos.com
Pgina - 19
Esta ilustracin grfica nos permite ubicar la coordenada correcta para el uso adecuado de los mtodos de construccin grfica. Estos mtodos deben ser utilizados a travs de un objeto grfico declarado con la clase Graphics. Resumen de Mtodos abstract void clearRect(int x, int y, int width, int height) Limpia el rea rectangular definido por los parmetros, rellenandolo con el color de fondo encontrado. abstract void copyArea(int x, int y, int width, int height, int dx, int dy) Copia una rea rectangular definido por los parmetros x,y, width, height, en la nueva coordenada tambin dados como parmetros dx , dy. abstract create() Crea un nuevo objeto grfico que es una copia del objeto grfico actual.
Graphics
Graphics create(int x, int y, int width, int height) Crea un nuevo objeto grfico basado en el actual objeto grfico, pero con una nueva dimensin. void draw3DRect(int x, int y, int width, int height, boolean raised) Dibuja un rectngulo tridimensional. El valor del ltimo parmetro debe ser true para que sea tridimensional por el lado inferior derecho, false para que sea tridimensional por el lado superior izquierdo. abstract void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle) Dibuja un arco circular elptico dentro del rectngulo especificado en los parmetros. Debe darse adems el ngulo de inicio y el ngulo del arco requerido. abstract drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer) Dibuja una imagen, previamente cargada, a partir de una coordenada x,y con un color de boolean fondo. El ltimo parmetro debe ser la palabra reservada this. abstract drawImage(Image img, int x, int y, ImageObserver observer) Dibuja una imagen, previamente cargada, a partir de una coordenada x, y. El ltimo boolean parmetro debe ser la palabra reservada this. abstract drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer) boolean Dibuja una imagen, previamente cargada, dentro de los lmites del rectngulo y con un color de fondo. El ltimo parmetro debe ser la palabra reservada this. abstract drawImage(Image img, int x, int y, int width, int height, ImageObserver observer) Dibuja una imagen, previamente cargada, dentro de los lmites del rectngulo. El ltimo boolean parmetro debe ser la palabra reservada this. abstract void drawLine(int x1, int y1, int x2, int y2) Dibuja una linea, desde las coordenadas del punto de partida (x1, y1) hasta las
07/07/2010 -
www.parainformaticos.com
Pgina - 20
coordenadas del punto de llegada (x2, y2). abstract void drawOval(int x, int y, int width, int height) Dibuja el contorno de un ovalo inscrito en un rectngulo cuyas coordenadas se dan como parmetros. abstract void drawPolygon(int[] xPoints, int[] yPoints, int nPoints) Dibuja un polgono cerrado de acuerdo a las coordenadas x,y indicados en sus respectivos arreglos. El ltimo parmetro indica el nmero de puntos del polgono. abstract void drawPolyline(int[] xPoints, int[] yPoints, int nPoints) Dibuja una secuencia continuada de lineas cuyas coordenadas se indican en sus respectivos arreglos. El ltimo parmetro indica el nmero de puntos indicados. void drawRect(int x, int y, int width, int height) Dibuja el contorno de un rectngulo cuyas coordenadas de la esquina superior izquierda, el ancho y el alto se dn como parmetros. abstract void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) Dibuja el contorno ovalado en las esquinas de un rectngulo dndole adems de las coordenadas para un rectngulo, el ancho y el alto de la curva de las esquinas. abstract void drawString(String str, int x, int y) Dibuja el texto dado a partir de la coordenada x,y tambin dados como parmetros. void fill3DRect(int x, int y, int width, int height, boolean raised) Dibuja un rectngulo tridimensional relleno. abstract void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle) Dibuja un arco circular o elptico relleno. abstract void fillOval(int x, int y, int width, int height) Dibuja un valo relleno. abstract void fillPolygon(int[] xPoints, int[] yPoints, int nPoints) Dibuja un polgono cerrado relleno. abstract void fillRect(int x, int y, int width, int height) Dibuja un rectngulo relleno. abstract void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight) Dibuja un rectngulo relleno con las esquinas en curva. abstract Color getColor() Obtiene el color actual. abstract Font getFont() Obtiene la fuente actual.
07/07/2010 -
www.parainformaticos.com
Pgina - 21
FontMetrics getFontMetrics() Obtiene las caractersticas de la fuente actual. abstract void setColor(Color c) Establece un color especfico. abstract void setFont(Font font) Establece una fuente especfica. String toString() Retorna como cadena el valor del objeto grfico. abstract void translate(int x, int y) Traslada el origen del contexto grfico hacia las coordenadas del punto (x, y). Ejemplo 07: Disee una aplicacin donde se pueda mostrar todos los grficos posibles con draw y con fill para notar su diferencia.
Nuevo Proyecto de nombre Ejemplo07, nuevo paquete de nombre ejemplo07, nuevo JFrame Formde nombre Principal. Seleccionamos el frame y le ponemos ttulo en su propiedad title. Luego hacemos el siguiente diseo:
07/07/2010 -
www.parainformaticos.com
Pgina - 22
07/07/2010 -
www.parainformaticos.com
Pgina - 23
07/07/2010 -
www.parainformaticos.com
Pgina - 24
Clase Integer: Jerarqua de clases y herencia: java.lang.Object java.lang.Number java.lang.Integer Integer es una clase final por lo que no puede ser heredada. La clase Integer envuelve un valor primitivo de tipo int en un objeto. Un objeto de tipo Integer contiene un dato de tipo int. Adems, esta clase provee varios mtodos para convertir un int a String y viceversa, asi como otras constantes y otros mtodos tiles para manejar un int. Resumen de Datos static int MAX_VALUE Una constante que tiene el mximo valor int puede ser, 231-1. static int MIN_VALUE Una constante que tiene el mnimo valor int puede ser, -231. static int SIZE El nmero de bits usados para representar un valor int en forma binara con complemento a dos.
Constructores Integer(int value) Construye un nuevo objeto Integer que representa el valor especificado como parmetro.
07/07/2010 -
www.parainformaticos.com
Pgina - 25
Construye un nuevo objeto Integer que representa el valor entero del parmetro dado como String.
byte byteValue() Retorna el valor de ste Integer como byte. int compareTo(Integer anotherInteger) Compara dos objetos Integer numricamente. static Integer decode(String nm) Decodifica un String y lo retorna como Integer. double doubleValue() Retorna el valor de ste Integer como double. boolean equals(Object obj) Compara este ojbeto con el dado como parmetro. Si son iguales retorna true, de lo contario retorna false. float floatValue() Retorna el valor de ste Integer como float. static Integer getInteger(String nm) Retorna como Integer el valor numrico dado como cadena. static Integer getInteger(String nm, int val) Retorna como Integer el valor numrico dado como cadena y segn el sistema de numeracin indicado como parmetro. int intValue() Retorna el valor de ste Integer como int. long longValue() Retorna el valor de ste Integer como long. static int parseInt(String s) Pasa la cadena dada como parmetro a un nmero entero en base 10. static int reverse(int i) Retorna el valor que se obtiene al invertir el orden de de los bits correspondientes al valor dado como parmetro. static int reverseBytes(int i)
07/07/2010 -
www.parainformaticos.com
Pgina - 26
Retorna el valor que se obtiene al invertir el orden de los bytes correspondientes al valor dado como parmetro. short shortValue() Retorna el valor de ste Integer como short. static int signum(int i) Retorna el signo del valor dado como parmetro. static String toBinaryString(int i) Retorna una cadena que representa el valor binario (base 2) del parmetro dado. static String toHexString(int i) Retorna una cadena que representa el valor hexadecimal (base 16) del parmetro dado. static String toOctalString(int i) Retorna una cadena que representa el valor octal (base 8) del parmetro dado. String toString() Retorna una cadena que representa ste valor entero. static String toString(int i) Retorna una cadena que representa el valor dado como parmetro. static Integer valueOf(int i) Retorna como Integer el valor dado como parmetro. static Integer valueOf(String s) Retorna como Integer el valor dado como parmetro. Ejemplos: int x; String s=123; x = Integer.parseInt(s); s = Integer.toString(45); x = Integer.MAX_VALUE; x = Integer.MIN_VALUE; Clase Math: Jerarqua de clases y herencia: java.lang.Object // 123 como entero // 45 como cadena // valor entero mximo positivo // valor entero mnimo negativo.
07/07/2010 -
www.parainformaticos.com
Pgina - 27
07/07/2010 -
www.parainformaticos.com
Pgina - 28
static double floor(double a) Retorna el valor double ms grande no mayor que el parmetro dado. static double log(double a) Retorna el logaritmo natural (base e) de un valor dado. static double max(double a, double b) Retorna el mayor de dos valores double dados como parmetros. static float max(float a, float b) Retorna el mayor de dos valores float dados como parmetros. static int max(int a, int b) Retorna el mayor de dos valores int dados como parmetros. static long max(long a, long b) Retorna el mayor de dos valores long dados como parmetros. static double min(double a, double b) Retorna el menor de dos valores double dados como parmetros. static float min(float a, float b) Retorna el menor de dos valores float dados como parmetros. static int min(int a, int b) Retorna el menor de dos valores int dados como parmetros. static long min(long a, long b) Retorna el menor de dos valores long dados como parmetros. static double pow(double a, double b) Retorna el valor de la potencia de a elevado al exponente b. static double random() Retorna un valor double aleatorio mayor o igual a 0.0 y menor a 1.0. static long round(double a) Retorna el valor redondeado del parmetro dado, como long. static int round(float a) Retorna el valor redondeado del parmetro dado, como int. static double sin(double a) Retorna el seno de un ngulo dado en radianes. static double sqrt(double a) Retorna la raz cuadrada del parmetro dado.
07/07/2010 -
www.parainformaticos.com
Pgina - 29
static double tan(double a) Retorna la tangente de un ngulo dado en radianes. static double toDegrees(double angrad) Convierte un ngulo expresado en radianes a sexagecimales. static double toRadians(double angdeg) Convierte un ngulo expresado en sexagecimales a radianes. Clase String: Jerarqua de clases y herencia: java.lang.Object java.lang.String La clase String representa una cadena de caracteres. Todos los literales de cadena tales como "abc", son implementados como instancias de la sta clase. Ejemplo, la siguiente declaracin de variable: String str = "abc"; Es equivalente a las siguientes declaraciones: char data[] = {'a', 'b', 'c'};// arreglo de caracteres String str = new String(data);// objeto con valor inicial abc La clase String incluye mtodos que permiten examinar los caracteres individuales de una cadena para compararlos, para ubicarlos, para extraerlos como subcadenas, y para crear copias de una cadena conviertiendo todos sus caracters a maysculas o a minsculas. El lenguaje Java prove soporte especial para la concatenacin (unin) de cadenas con el operador ( + ), y para convertir otros objetos a cadenas. La concatenacin de cadenas es implementada a travs de la clase StringBuffer y su mtodo append(). Las conversiones son implementadas a travs del mtodo toString() definido en la clase Object la cual es heredada por todas las clases en Java. Constructores String() String(byte[] bytes) String(char[] value) String(String original) Crea un nuevo objeto String vaco, sin caracteres. Crea un nuevo objeto String inicializado con los caracteres equivalents a cada nmero guardado en el arreglo de bytes. Crea un nuevo objeto String inicializado con los caracteres contenidos en el arreglo dado como parmetro. Crea un nuevo objeto String inicializado con el valor dado como
07/07/2010 -
www.parainformaticos.com
Pgina - 30
parmetro. Resumen de Mtodos char charAt(int index) Retorna el character correspondiente al indice dado como parmetro. int compareTo(String anotherString) Retorna como entero el resultado de la comparacin de la cadena con otra cadena. Si ste entero es 0 significa que ambas cadenas son iguales. La comparacin se realiza exactamente carcter con carcter diferenciando maysculas de minsculas. int compareToIgnoreCase(String str) Retorna como entero el resultado de la comparacin de la cadena con otra cadena. Si ste entero es 0 significa que ambas cadenas son iguales. La comparacin se realiza exactamente carcter con carcter pero ignorando la diferencia entre maysculas y minsculas. String concat(String str) Retorna el resultado de la concatenacin de la cadena con otra dada como parmetro. boolean endsWith(String suffix) Retorna true si sta cadena termina con la cadena dada como parmetro, de lo contrario retorna false. boolean equals(Object anObject) Retorna true si sta cadena es igual al objeto dado como parmetro. boolean equalsIgnoreCase(String anotherString) Retorna true si sta cadena es igual a la cadena dada como parmetro ignorando la diferencia entre maysculas y minsculas. byte[] getBytes() Retorna un arreglo de nmeros conteniendo los respectivos cdigos nuricos de los caracteres de sta cadena. int indexOf(int ch) Retorna la posicin de la primera ocurrencia del caractr dado como parmetro dentro de sta cadena. int indexOf(int ch, int fromIndex) Retorna la posicin de la primera ocurrencia del caractr dado como parmetro y que se encuentre en sta cadena pero a partir de la posicin dada como parmetro. int indexOf(String str) Retorna la posicin de la primera ocurrencia encontrada de la cadena dada como parmetro. int indexOf(String str, int fromIndex) Retorna la posicin de la primera ocuerrencia encontrada de la cadena dada com
07/07/2010 -
www.parainformaticos.com
Pgina - 31
parmetro pero empezando su bsqueda en la posicin dada como parmetro. int lastIndexOf(int ch) Retorna la posicin de la ltima ocurrencia del character dado como parmetro. int lastIndexOf(int ch, int fromIndex) Retorna la posicin de la ltima ocurrencia del character dado como parmetro, buscando en retroceso a partir de la posicin indicada. int lastIndexOf(String str) Retorna la posicin de la ltima ocurrencia de la cadena dada como parmetro. int lastIndexOf(String str, int fromIndex) Retorna la posicin de la ltima ocurrencia de la cadena dada como parmetro., buscando en retroceso a partir de la posicin dada como parmetro. int length() Retorna el nmero de caractres que contiene la cadena. String replace(char oldChar, char newChar) Retorna una nueva cadena como resultado de reemplazar todas las ocurrencias del caractr oldChar por el caractr newChar dados como parmetros. String replaceAll(String regex, String replacement) Retorna una nueva cadena como resultado de reemplazar todas las ocurrencias de la subcadena regex por la subcadena replacement dados como parmetros. String replaceFirst(String regex, String replacement) Retorna una nueva cadena como resultado de reemplazar solo la primera ocurrencia de la subcadena regex por la subcadena replacement dados como parmetros. boolean startsWith(String prefix) Retorna true si la cadena empieza con la subcadena prefix dada com parmetro. boolean startsWith(String prefix, int toffset) Retorna true si la cadena empieza con la subcadena prefix dada com parmetro, empezando la bsqueda en la posicin toffset dado como parmetro. String substring(int beginIndex) Retorna una subcadena cuyo primer character empieza en la posicin beginIndex dado como parmetro. String substring(int beginIndex, int endIndex) Retorna una subcadena copiada cuyo primer caractr empieza en la posicin beginIndex y cuya cantidad de caracteres a copiar es indicado por endIndex dados como parmetros. char[] toCharArray() Retorna en un arreglo de caractres el contenido de la cadena.
07/07/2010 -
www.parainformaticos.com
Pgina - 32
String toLowerCase() Retorna una nueva cadena como resultado de convertir todos los caractres a minsculas. String toUpperCase() Retorna una nueva cadena como resultado de convertir todos los caractres a maysculas. String trim() Retorna una nueva cadena como resultado de omitir los espacios en blanco al inicio y al final de la cadena. static String valueOf(boolean b) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(char c) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(char[] data) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(double d) Retorna una nueva cadena como resultado de convertir su parmetro a cadena.. static String valueOf(float f) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(int i) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(long l) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. static String valueOf(Object obj) Retorna una nueva cadena como resultado de convertir su parmetro a cadena. Ejemplo 08: Disee una aplicacin que permita manipular los caracteres de una cadena a travs de sus mtodos disponibles de acuerdo a la siguiente interfz grfica.
07/07/2010 -
www.parainformaticos.com
Pgina - 33
Nuevo proyecto de nombre Ejemplo08, nuevo paquete de nombre ejemplo08, nuevo JFrame Form de nombre Principal donde hacemos el siguiente diseo: Aplicamos GridLayout para el JFrame principal con 2 columnas, 1 fila. En la primera columna ponemos un Panel (jPanel1) con distribucin BorderLayout: En el norte ponemos la caja de texto con borde, en el centro un rea de Texto y en el sur una etiqueta. En la segunda columna ponemos otro Panel (jPanel2) con distribucin GridLayout con 2 columnas, 7 filas para los botones. Finalmente, cambiamos el texto y el nombre de variable para los objetos. Observe la distribucin de los objetos y los nombres de variable utilizados.
Ahora vamos a ver la programacin de cada botn. Doble clic en cada botn para programar su accin. private void btnLongitudActionPerformed(java.awt.event.ActionEvent evt) { // lee el mensaje
07/07/2010 -
www.parainformaticos.com
Pgina - 34
07/07/2010 -
www.parainformaticos.com
Pgina - 35
07/07/2010 -
www.parainformaticos.com
Pgina - 36
// muestra contenido del arreglo txtSalida.setText("Posicion\tCaracter\t\tAscii\n"); for (int p=0; p < longi; p++) txtSalida.append("\t"+p+"\t"+(char)(arreglo[p])+ "\t\t"+arreglo[p]+"\n"); } private evt) { void btnSinPrimeraPalabraActionPerformed(java.awt.event.ActionEvent
// lee mensaje String cadena=txtMensaje.getText(); // elimina los espacios laterales cadena=cadena.trim(); // encuentra la primera posicin de un espacio en blanco int p=cadena.indexOf(' '); if(p>0) // descarta la primera palabra cadena=cadena.substring(p+1).trim(); else cadena=""; // resultado txtSalida.setText("Sin la primera palabra:\n"+cadena); } private void btnSinUltimaPalabraActionPerformed(java.awt.event.ActionEvent evt) { String palabra; int p; // lee mensaje String cadena=txtMensaje.getText(); // elimina espacios laterales cadena=cadena.trim(); // se queda con la ultima palabra do{ p=cadena.indexOf(' '); if(p>0) cadena=cadena.substring(p+1).trim(); }while(p>0); palabra=cadena.trim(); // vuelve a leer el mensaje original cadena=txtMensaje.getText(); // encuentra posicion de la ultima palabra p=cadena.indexOf(palabra); if (p>0) cadena=cadena.substring(0, p-1).trim();
07/07/2010 -
www.parainformaticos.com
Pgina - 37
07/07/2010 -
www.parainformaticos.com
Pgina - 38
07/07/2010 -
www.parainformaticos.com
Pgina - 39
07/07/2010 -
www.parainformaticos.com
Pgina - 40
Resumen de Mtodos void add(int index, Object element) Inserta el elemento dado como parmetro en la posicin index tambin dada como parmetro. boolean add(Object o) Agrega el elemento dado como parmetro al final del vector. boolean addAll(Collection c) Agrega todos los elementos de la coleccin dada como parmetro al final del vector. boolean addAll(int index, Collection c) Inserta todos los elementos de la coleccin dada como parmetro a partir de la posicin index tambin dada como parmetro. void addElement(Object obj) Agrega el elemento dado como parmetro al final del vector incrementando su tamaao en uno. int capacity() Retorna la capacidad actual del vector. void clear() Remueve todos los elementos del vector. Object clone() Retorna un clon del vector. boolean contains(Object elem) Retorna true si el elemento dado como parmetro se encuentra en el vector; de lo contrario retorna false. boolean containsAll(Collection c) Retorna true si el vector contiene a todos los elementos de la coleccin dada como parmetro; de lo contrario retorna false. void copyInto(Object[] anArray) Copia loe elementos de ste vector en el arreglo indicado como parmetro. Object elementAt(int index) Retorna el elemento que ocupa la posicin index dado como parmetro. boolean equals(Object o) Retorna true si la comparacin del objeto dado como parmetro es igual a ste vector; de lo contrario retorna false. Object firstElement() Retorna el primer elemento del vector. Aquel que ocupa la posicin 0.
07/07/2010 -
www.parainformaticos.com
Pgina - 41
Object get(int index) Retorna el elemento que ocupa la posicin index dado como parmetro. int indexOf(Object elem) Retorna la posicin de la primera ocurrencia del elemento dado como parmetro en el arreglo. De no encontrarse, retorna -1. int indexOf(Object elem, int index) Retorna la posicin de la primera ocurrencia del elemento dado como parmetro pero buscado a partir de la posicin index dado como parmetro. void insertElementAt(Object obj, int index) Inserta el objeto dado como paremtro a partir de la posicin index tambin dado como parmetro. boolean isEmpty() Retorna true si el vector est vaco, no tiene elementos; de lo contrario retorna false. Object lastElement() Retorna el ltimo elemento del vector. int lastIndexOf(Object elem) Retorna la posicin de la ltima ocurrencia del elemento dado como parmetro. int lastIndexOf(Object elem, int index) Retorna la posicin de la ltima ocurrencia del elemento dado como parmetro pero buscado en retroceso a partir de la posicin index dado como parmetro. Object remove(int index) Remueve el elemento de la posicin index dado como parmetro. boolean remove(Object o) Remueve la primera ocurrencia del elemento dado como parmetro, retornando true si el elemento fue removido o false si el elemento no fue encontrado y por tanto, no removido. boolean removeAll(Collection c) Remueve del vector todos los elementos indicados en la coleccin dada como parmetro. void removeAllElements() Remueve todos los elementos del vector volviendo a su tamao en 0. boolean removeElement(Object obj) Remueve la primera ocurrencia del objeto dado como parmetro, retornando true si fue removido y false si no lo fue. void removeElementAt(int index) Remueve el elemento de la posicin index dado como parmetro.
07/07/2010 -
www.parainformaticos.com
Pgina - 42
boolean retainAll(Collection c) Retiene solamente los elementos contenidos en la coleccin dada como parmetro retornando true si fue exitosa la operacin y false si no lo fue.. Object set(int index, Object element) Reemplaza el elemento de la posicin index por el elemento dado como parmetro. void setElementAt(Object obj, int index) Reemplaza el elemento de la posicin index por el elemento dado como parmetro. void setSize(int newSize) Establece el tamao del vector. int size() Retorna el nmero de elementos del vector. List subList(int fromIndex, int toIndex) Retorna un lista de elementos comprendidos entre la posicin fromIndex y toIndex dados como parmetros. Incluy fromIndex pero n incluye a toIndex. Object[] toArray() Retorna un arreglo conteniendo todos los elementos del vector. String toString() Retorna una cadena representando al vector y conteniendo la cadena representativa de cada elemento. void trimToSize() Actualiza la capadidad del vector con su tamao actual. Ejemplo 09: Disee una aplicacin que utilice un vector que contenga nombres de amigos, y a travs de botones se puedan realizar diferentes procesos como se indica en la siguiente interfz grfica:
07/07/2010 -
www.parainformaticos.com
Pgina - 43
Nuevo proyecto de nombre Ejemplo09, nuevo paquete de nombre ejemplo09, nuevo JFrame Form.de nombre Principal donde hacemos el siguiente diseo. Clic en el frame y en la propiedad title le ponemos un ttulo. Sobre el frame colocamos un panel (panPrincipal) con distribucin BorderLayout: En el norte colocamos la caja de txto con un texto en su borde, en el centro colocamos otro panel (panCentral) con distribucin GridLayout de 2 columnas, 1 fila. En la primera columna colocamos un scrollpane con un rea de texto y en la segunda columna colocamos un tercer panel (panBotones) con distribucin GridLayout de 1 columna, 8 filas donde colocamos los botones. Por ltimo, colocamos una etiqueta en el sur del panel principal para el nmero de elementos. Observe la distribucin de los objetos y los nombres de variable utilizados.
07/07/2010 -
www.parainformaticos.com
Pgina - 44
Vamos al cdigo fuente (source) para declarar un objeto de la clase Vector: Clic en source y escribimos lo que est en negrita: public class Principal extends javax.swing.JFrame { Vector amigos = new Vector(); public Principal() { initComponents(); } Ahora vamos a programar todos los botones. Se recomienda hacerlo uno por uno con doble clic: private void btnAgregaAlFinalActionPerformed(java.awt.event.ActionEvent evt) { alFinal(); } private void btnAgregaAlInicioActionPerformed(java.awt.event.ActionEvent evt) { alInicio(); } private void btnQuitarActionPerformed(java.awt.event.ActionEvent evt) { quitaUno(); } private void btnQuitarTodoActionPerformed(java.awt.event.ActionEvent evt) { quitaTodos(); } private void btnObtieneElPrimeroActionPerformed(java.awt.event.ActionEvent evt) { elPrimero();
07/07/2010 -
www.parainformaticos.com
Pgina - 45
07/07/2010 -
www.parainformaticos.com
Pgina - 46
07/07/2010 -
www.parainformaticos.com
Pgina - 47
07/07/2010 -
www.parainformaticos.com
Pgina - 48
07/07/2010 -
www.parainformaticos.com
Pgina - 49
Object clone() Retorna una copia de ste ArrayList. boolean contains(Object o) Retorna true si la lista contiene al objeto del parmetro. E get(int index) Retorna el objeto de la lista que est en la posicin indicada como parmetro. int indexOf(Object o) Retorna la posicin de la primera ocurrencia del objeto dado como parmetro. En caso que no est en la lista retorna -1. boolean isEmpty() Retorna true si la lista est vaca. int lastIndexOf(Object o) Retorna la posicin de la ltima ocurrencia del objeto dado como parmetro. Si el objeto no se encuentra en la lista, retorna -1. E remove(int index) Elimina el objeto que se encuentra en la posicin indicada. boolean remove(Object o) Elimina la primera ocurrencia del objeto dado como parmetro si est en la lista. protected removeRange(int fromIndex, int toIndex) Elimina los objetos que se encuentren en las posiciones correspondientes al rango cerrado void dado como parmetro. E set(int index, E element) Reemplaza el objeto dado como parmetro al que se encuentre en la posicin indicada. int size() Retorna el nmero de objetos en la lista. Object[] toArray() Retorna en un arreglo de objetos todos los elementos de la lista. void trimToSize() Recorta la capacidad de la lista para que sea del tamao que corresponde al nmero de elementos que contiene. Ver aplicaciones de ejemplo en el captulo 09.
07/07/2010 -
www.parainformaticos.com
Pgina - 50