Fundamentos de JAVA

33
2/2/2006 Fundamentos de JAVA Angel Kuri Enero, 2006

Transcript of Fundamentos de JAVA

Page 1: Fundamentos de JAVA

2/2/2006

Fundamentos de JAVA

Angel KuriEnero, 2006

Page 2: Fundamentos de JAVA

2/2/2006

Enunciados y Expresiones

Los siguientes son enunciados sencillos:int i = 1

import java.awt.Font

System.out.println(“Esta moto es una “

+ color + “ “ + marca);

m.engineState = true;

Page 3: Fundamentos de JAVA

2/2/2006

Expresiones

Los enunciados anteriores se denominan expresiones si regresan un valor.

Todos los enunciados terminan con “;”.Un enunciado compuesto o bloque

constituyen unidades funcionales independientes.

Se abren con “{“ y se cierran con “}”

Page 4: Fundamentos de JAVA

2/2/2006

Variables y Tipos de Datos

JAVA maneja tres tipos de variables:a) De instanciab) De clasec) Locales

Las variables locales se declaran y usan dentro de las definiciones de método. Por ejemplo, como índices, contadores locales, etc.

JAVA no cuenta con variables globales.

Page 5: Fundamentos de JAVA

2/2/2006

Declaración de Variables

Ejemplos:int miEdad;

String miNombre;

boolean estaCansado;

int x,y,z;

String primerNombre, apellido;

Page 6: Fundamentos de JAVA

2/2/2006

Declaración de Variables

int MiEdad,NumeroDeZapatos=7;

String miNombre=“Angel”;

int a=1, b=2, c=3;

Los nombres de las variables pueden iniciar con letra, guión bajo o signo de pesos ($).

Después pueden constar de casi cualquier símbolo.

Page 7: Fundamentos de JAVA

2/2/2006

Tipos de Variables

Las variables constan de nombre y tipo.Los tipos pueden ser:

- Uno de los 8 tipos primitivos (boolean, int, byte, short, long, float, double, char)- El nombre de una clase o interfaz (por ejemplo, String, Font)- Un arreglo

Page 8: Fundamentos de JAVA

2/2/2006

Variables Enteras

Tipo Tamaño Rangobyte 8 bits -128 a +127short 16 bits -32,768 a +32767int 32 bits -2,147,483,648 a + 232-1long 64 bits -263 a +263-1

(-9,223,372,036,854,775,808)

Page 9: Fundamentos de JAVA

2/2/2006

Variables Reales

Las variables reales o de punto flotante siguen el estándar IEEE754.

Existen variables de precisión sencilla o de precisión doble.

Las primeras constan de 32 bits.Las segundas constan de 64 bits.

Page 10: Fundamentos de JAVA

2/2/2006

Formas de Representación

Existen varias formas de especificar valores en los números:

Un 4, por ejemplo es una literal entera de tipo int (aunque puede asignarse a una variable short o byte).

Puede forzarse un número pequeño a longagregando L (o l) a ese número.

X = 4L // Entero tipo long

Page 11: Fundamentos de JAVA

2/2/2006

Formas de Representación

Los enteros también pueden expresarse en octal o en hexadecimal:

E1 = 0777 // OctalE2 = 0xBA21 // Hexadecimal

Page 12: Fundamentos de JAVA

2/2/2006

Formas de Representación

Las variable reales tienen, normalmente, una parte entera y una decimal:

R1 = 3.1416R2 = -10E+11

Un número puede forzarse a tipo floatusando este formato:

R5 = 212.345f R3 = -3129F

Page 13: Fundamentos de JAVA

2/2/2006

Variables de Cadena

Las variables de cadena son instancias de la clase String.

Las literales de cadena consisten de una serie de caracteres dentro de comillas dobles:

String S1, S2;

S1 = “Este es un ejemplo”;

Page 14: Fundamentos de JAVA

2/2/2006

Literales de Cadena

String S1, S2;

S1 = “Súbitamente entendí”;S2 = “”; // una cadena vacíaS1 = “Una cadena con un \t tabulador”;S2 = “Cadenas anidadas son \”cadenas dentro

de\” otras cadenas”;S1 = “Esta cadena es traída a Ud. por

JAVA\u2122”; // El Unicode es de (TM).

Page 15: Fundamentos de JAVA

2/2/2006

Códigos de CaracteresEscape Significado\n Línea nueva\t Tabulador\b Retroceso\r Regreso de carro\f Salto de página\\ Antidiagonal\’ ó \” Comillas sencillas/dobles\ddd ó \xdd Octal/Hexadecimal\udddd Unicode

Page 16: Fundamentos de JAVA

2/2/2006

Operadores Aritméticos

Operador Significado Ejemplo+ Suma x = x+y;- Resta y = y-12;* Multiplicación z = x*y;/ División x = z/y;% Residuo y = y%3;

Page 17: Fundamentos de JAVA

2/2/2006

Ejemplo de Aplicación*class ArithmeticTest {

public static void main (String args[ ]) {short x=6;int y=4;float a=12.5f;float b=7f;System.out.println("");System.out.println("x es "+x+" y es "+y);System.out.println("x + y es "+ (x+y));System.out.println("x - y es "+ (x-y));System.out.println("x / y es "+ (x/y));System.out.println("x % y es "+ (x%y));

}}

Page 18: Fundamentos de JAVA

2/2/2006

Otras Formas de Asignación

Expresión Significadox += y x = x + yx -= y x = x-yx *= y x = x*yx /= y x = x/yx %= y x = x%yy = ++x y = cambia x; asigna a yy = x++ y = asigna a y; cambia x

Page 19: Fundamentos de JAVA

2/2/2006

Ejemplo de Pre/Postfijo (1/2)

Page 20: Fundamentos de JAVA

2/2/2006

Comparaciones

Operador Significado Ejemplo= = Igual x = = 3!= Distinto x != 8< Menor que y < 5> Mayor que z > 18<= Menor o igual x <= 16>= Mayor o igual w >= -2

Page 21: Fundamentos de JAVA

2/2/2006

Operadores Lógicos

Estos son: AND, OR, NOT, XORSus símbolos:

Operador SímboloAND & o &&OR | o ||NOT !XOR ^

Page 22: Fundamentos de JAVA

2/2/2006

Operadores LógicosAND

Argumento 1 Argumento 2 A1 & A2false false falsefalse true falsetrue false falsetrue true true

Page 23: Fundamentos de JAVA

2/2/2006

Operadores LógicosOR

Argumento 1 Argumento 2 A1 | A2false false falsefalse true truetrue false truetrue true true

Page 24: Fundamentos de JAVA

2/2/2006

Operadores LógicosXOR

Argumento 1 Argumento 2 A1 ^ A2false false falsefalse true truetrue false truetrue true false

Page 25: Fundamentos de JAVA

2/2/2006

Operadores LógicosNOT

Argumento A1 !A1false truetrue false

Page 26: Fundamentos de JAVA

2/2/2006

Operadores Lógicos

Por el Teorema de De Morgan:!(a | b) = !a & !b!(a & b) = !a | !b

De donde se desprende que cualquier operación lógica puede ser lograda con:

a) El operador & y el operador !o bien

b) El operador | y el operador !

Page 27: Fundamentos de JAVA

2/2/2006

Operadores de Bits

Operador Significado& AND de bits| OR de bits^ XOR de bits<< Corrimiento izquierdo>> Corrimiento derecho>>> Llenar con ceros a la derecha

Page 28: Fundamentos de JAVA

2/2/2006

Operadores de Bits

Operador Significado& AND de bits~ NOT de bits<<= Asignación de corrimiento

izquierdo (x=x>>y)>>=/>>>= Asignación >>/>>>&=/|=/^= Asignación (x=x&y/x|y/x^y)

Page 29: Fundamentos de JAVA

2/2/2006

Page 30: Fundamentos de JAVA

2/2/2006

Page 31: Fundamentos de JAVA

2/2/2006

Aritmética de Cadenas

El operador de suma (+) puede usarse para crear y concatenar cadenas.

EnSystem.out.println(nombre+”es un “+color);

se crea una sola cadena que es la concatena-ción de todos los operandos.

Si cualquiera de los operandos no es cadena, se convierte en tal automáticamente.

Page 32: Fundamentos de JAVA

2/2/2006

Notas Complementarias

JAVA no permite el manejo de constantes locales. Es posible crear instancias constantes y variables de clase.

Para encontrar los tipos de las variables que no son las básicas de JAVA es posible usar el operador instanceof del cual hablaremos más adelante.

Page 33: Fundamentos de JAVA

2/2/2006

Ejercicio 1

Desarrolle un programa que aplique los operadores lógicos de manera que se demuestre claramente la equivalencia lógica implícita en el teorema de De Morgan.

a) Declare una clase llamada DeMorgan.b) Efectúe una prueba lógica usando:

1) ANDs y NOTs2) ORs y NOTs

Demuestre que los resultados son iguales.