Resumen Fundamentos de Programación/ Programación I 2007-2008.

26
Resumen Fundamentos de Programación/ Programación I 2007-2008

Transcript of Resumen Fundamentos de Programación/ Programación I 2007-2008.

Page 1: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Resumen

Fundamentos de Programación/ Programación I

2007-2008

Page 2: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Variables

• En Java, se necesita una variable para cada dato que se quiere guardar en la memoria

• Cada variable tiene un tipo y un identificador• Declaración (sólo una vez):

<tipo> <identificador>;

• Asignación (cualquier número de veces):<identificador> = <expresión>;

• ¡El resultado de evaluar la expresión tiene que ser del mismo tipo que la variable!

Page 3: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Tipos de datos

• Números enteros: int, byte, short, long• Números reales: float, double• Caracteres: char• Boolean (true o false): boolean• Cadenas de caracteres: String

Page 4: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Literales

• Datos que se pueden expresar directamente en Java

• Ejemplos:– Número entero: 10– Número real: 18.54– Carácter: ‘d’– Boolean: true o false– Cadena de caracteres: “Hola”

Page 5: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Conversión y casting

• Se puede convertir el tipo de datos que son números o caracteres

• Ejemplo:double d = 10;int i = ‘c’;

• La conversión sólo es posible en una dirección:char byte short int long float double

• Si quiere convertir el tipo en la otra dirección necesita casting:int i = (int)5.4;char c = (char)67;

Page 6: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Operadores

• Se usan para manipular datos• Cada operador está asociado con uno o más

datos, llamados operandos:unario un operando

binario dos operandosternario tres operandos

• Para resolver ambigüedad, Java aplica prioridad y asociatividad

Page 7: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Operadores aritméticos

Categoría Operandos Significado

+ unario, binario

enteros, reales

signo, adición

- unario, binario

enteros, reales

signo, sustracción

* binario enteros, reales

multiplicación

/ binario enteros, reales

división

% binario enteros, reales

resto

Page 8: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Operadores abreviados

Categoría Abreviado No abreviado

++ unario a++, ++a a = a + 1

-- unario a--, --a a = a - 1

+= binario a += b a = a + b

-= binario a -= b a = a - b

*= binario a *= b a = a * b

/= binario a /= b a = a / b

%= binario a %= b a = a % b

Page 9: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Operadores relacionales

Categoría Operandos Significado

== binario enteros, reales igual

!= binario enteros, reales distinto

> binario enteros, reales mayor

>= binario enteros, reales mayor o igual

< binario enteros, reales menor

<= binario enteros, reales menor o igual

Page 10: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Operadores lógicos

Categoría Operandos Significado

&& binario boolean Y lógica

|| binario boolean O lógica

^ binario boolean O exclusiva

! unario boolean NO

Page 11: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Prioridad y asociatividad

1 () paréntesis

2 + - ++ -- ! (tipo) sgn/inc/dec/NO/casting der-izq

3 * / % mult/div/resto izq-der

4 + - + ad/sust/concatenación izq-der

5 > >= < <= mayor/menor izq-der

6 == != igual/distinto izq-der

7 ^ O exclusiva izq-der

8 && Y lógica izq-der

9 || O lógica izq-der

10

= += -= *= /= %= asignación der-izq

Page 12: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Flujo

• El flujo de un programa es el orden en cual se ejecutan las instrucciones

• Normalmente el flujo es secuencial• Existen dos estructuras que cambian el flujo:

– Estructuras condicionales: un bloque sólo se ejecuta bajo ciertas condiciones

– Estructuras de repetición: un mismo bloque se ejecuta repetidamente

Page 13: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Instrucciones condicionales

• if

• if-else

• if-else-if

• switch

Page 14: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Instrucción ifSintaxis: if (<expresión-boolean>) <bloque-o-instruccion>

expresión-boolean

bloque-o-instruccion

true false

Page 15: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Instrucción if-elseSintaxis: if (<expresión-boolean>) <bloque-o-instruccion1>

else<bloque-o-instruccion2>

expresión-boolean

bloque-o-instruccion1

true false

bloque-o-instruccion2

Page 16: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Sintaxis: if (<expresión-boolean1>) <bloque-o-instrucción1>

else if (<expresión-boolean2>)<bloque-o-instrucción2>

...else if (<expresión-booleanN-1>)

<bloque-o-instrucciónN-1>else

<bloque-o-instrucciónN>

Instrucción if-else-if

Page 17: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Instrucción switchswitch (<selector>) {

case <etiqueta1>: <bloque1>; break;

case <etiqueta2>: <bloque2>; break;

...case <etiquetan>: <bloquen>;

break;default: <bloqued>; // opcional

}

Page 18: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Estructuras de repetición

• while• do-while• for

Page 19: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Bucle whileSintaxis: while (<expresión-boolean>) <bloque-o-instrucción>

expresión-boolean

bloque-o-instrucción

true false

Page 20: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Bucle do-while

Sintaxis: do <bloque-o-instrucción>

while (<expresión-boolean>);

expresión-boolean

true

false

bloque-o-instrucción

Page 21: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Bucle for• Sintaxis:

for (<inicialización>;<condición>;<actualización>)<bloque-o-instrucción>

inicialización

condición

bloque-o-instrucción

actualización

truefalse

Page 22: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Métodos

• Métodos en Java son módulos de código que se pueden tratar individualmente

• Un programa normalmente consiste en varios métodos

• Declaración de un método:<acceso> <tipo> <identificador>(<entrada>) {

<bloque>

}

Page 23: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Métodos

• El acceso especifica quien puede usar el método• Acceso para todos: public static• El tipo especifica cual es el resultado del método• Puede ser cualquier tipo de datos más void

(ningún resultado)• El identificador es el nombre del método• La entrada especifica la información necesaria

para aplicar el método• Es una lista de variables separadas por coma

Page 24: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Métodos

• La salida es el resultado del método (si el tipo no es void)

• Para terminar el método y devolver el resultado se usa la palabra return

• Para llamar a un método hay que especificar los valores de entrada (separados por coma):<identificador>(<valores>)

• Si el método halla en otro programa:<programa>.<identificador>(<valores>)

Page 25: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Inicialización y duración

• Para usar una variable hay que inicializar su valor

• Si existe un caso en que no se inicializa el valor de una variable, el programa no compila

• La duración (o vida) de una variable se limita por el bloque de código donde está declarada

• Puede ser dentro de un método, dentro de un bucle o dentro de una estructura condicional

• ¡La variable no existe fuera de su bloque!

Page 26: Resumen Fundamentos de Programación/ Programación I 2007-2008.

Palabras reservadas

class inicio de programapublic, static accesovoid tipo de métodosreturn retorno de métodosbyte, short, int, long números enterosfloat, double números realeschar caracteresboolean, true, false tipo Booleanif, else, switch estructura condicionalcase, default parte de switchwhile, do, for estructura de

repeticiónbreak, continue control de flujo