Documente Academic
Documente Profesional
Documente Cultură
Contenidos
Sintaxis bsica
! El programa debe tener una clase principal, que dena un punto de entrada ! Cuando se ejecuta el programa, la JVM ejecuta el punto de entrada de la clase principal
Clase
principal
! Se
indica
como
parmetro
cuando
se
ejecuta
la
JVM
! Debe
haber
sido
compilada
y
su
chero
.class
debe
exis7r
dentro
del
CLASSPATH
! Posee
un
punto
de
entrada
! Comienza
con
las
palabras
reservadas
public static void main (String[] args)
/* */
Programa
de
ejemplo
// Esto es un comentario de una linea Esto es un comentario de multiples lineas
/* El metodo main es el punto de comienzo del programa */ public static void main(String[] args) { System.out.println("Hola mundo"); } }
! Seguido de esto hay un bloque { } que con7ene el cdigo que se ejecuta al comenzar el programa.
Punto de entrada
18/01/12
Comentarios
! Sirven
para
explicar
porciones
del
cdigo
a
nosotros
mismos
(para
el
futuro)
y
a
otros
! Muy
7l
en
zonas
complejas
! Tan
importante
como
escribir
buen
cdigo
! Ignorado
por
el
compilador
! De
una
lnea:
precedido
por
//
! Ml7ples
lneas:
entre
/*
y
*/
Bloques
de
cdigo
! Zonas
de
texto
entre
{
}
! Sucesin
de
sentencias
! Las
sentencias
terminan
en
;
! Preferiblemente
una
sentencia
por
lnea
! Se
pueden
anidar
bloques
} } { sentencia1; sentencia2; { // Comentario sentencia3;
Variables y 7pos
Variables
! Representan
can7dades,
cualidades
y/o
objetos
del
programa
! Es
una
regin
de
memoria
donde
se
guarda
un
valor
que
posteriormente
ser
u7lizado
por
el
programa
! Antes
de
usarlas
debemos
declararlas
para
que
el
compilador
conozca:
! Su
nombre
! Su
mbito
de
vida
! Su
visibilidad
! Su
7po
asociado
Tipo: Valor:
Tipo y valor
Tipo: Valor:
18/01/12
Declaracin
de
variables
! Simple
tipo identificador; ! Ml7ple
tipo identificador1, identificador2;
! Con
asignacin
tipo identificador = valor;
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Tipos
bsicos
! Booleano:
! Carcter:
verdadero,
falso
a,
A,
z,
Z,
1,
9,
#,
?,
-1,
33
3.14,
5E-10
Booleano
! Para
representar
valores
lgicos:
cierto
o
falso
! Se
u7liza
para
representar
el
resultado
de
las
operaciones
lgicas
y
de
comparacin
! Tipo
boolean ! Valores
true o
false
Carcter
! Valores
numricos
que
se
usan
para
representar
caracteres
(letras,
nmeros,
smbolos)
usando
la
tabla
ACII
o
La7n
1
! Tipo
char ! Se
expresan
entre
comillas
simples:
a,
4,
#
Nmero
entero
! Para
contar
o
numerar
! Diferentes
bases
de
representacin
Decimal
(10):
Octal
(8):
0,
-1,
65184
00,
-01,
0177240
0x0,
-0x1,
0xFEA0
Nmero
real
! Nmeros
reales,
posi7vos
o
nega7vos
y
con
o
sin
decimales
! Coma
otante
! Representacin
interna
dis7nta
a
la
de
los
enteros
Hexadecimal (16):
18/01/12
Tipos
bsicos
Tipo
boolean char byte short int long float double 16
8
16
32
64
32
64
Tamao
en
bits
Valores
true
o
false De
\u0000
a
\uFFFF
De
-128
a
127
Nmero
entero
de
-32768
a
32767
Nmero
entero
de
-231
a
231
-
1
Nmero
entero
de
-263
a
263
-
1
Nmero
real
en
coma
otante
Numero
real
en
coma
otante
Declaraciones
de
ejemplo
int i; float i, j, k; char a = x, b = 4, c = a; boolean b = false; double k = -0.25;
Son
a
y
b
iguales?
! Caso
1
int a = 1; char b = 1;
! Caso
2
int a = 1; long b = 1;
! Caso
3
int a = 1; double b = 1.0;
Conversin
de
7pos
! Qu
pasa
cuando
combinamos
7pos
diferentes?
! Tipos
compa7bles:
Aquellos
que
almacenan
informacin
similar
! Tipos
incompa7bles:
Aquellos
que
almacenan
informacin
diferente
! 2
mecanismos
! Conversin
autom7ca
! Conversin
explcita
Conversin
autom7ca
! La
hace
autom7camente
el
compilador
! Es
segura
! Solo
entre
7pos
compa7bles
! Se
realiza
por
promocin:
de
un
7po
menor
a
uno
mayor
int a = 2; float valor = a;
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Conversin
explcita
! Cas7ng:
mecanismo
para
explicitar
el
cambio
de
7po
de
una
expresin
o
variable
! Le
indicamos
al
compilador
que
asumimos
la
responsabilidad
! Sintaxis:
(tipo nuevo) expresin
18/01/12
Conversin
de
7pos
long a = 1; int b = a;
! Forma correcta:
Entrada/salida
bsica
long a = 1; int b = (int)a;
Entrada/salida
estndar
! Mecanismos
sencillos
para
leer
y
escribir
informacin
por
la
terminal
! La
clase
String:
! Representa
una
cadena
de
caracteres
! Ser
ver
en
profundidad
ms
adelante
! Se
pueden
denir
y
usar
variables
(objetos)
de
clase
String:
String cadena = mi cadena de texto;
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Secuencias
de
escape
! Sirven
para
tener
mayor
control
sobre
el
formato
de
la
salida
de
los
datos
! Secuencias
especiales
de
caracteres
en
las
cadenas
de
texto
\n
\t
\r
\\
\
Salto
de
lnea
Tabulador
retorno
de
carro
Barra
inver7da
Comillas
dobles
}
18/01/12
Operadores y expresiones
Operadores
! Permiten
realizar
operaciones
sobre
las
variables
y
su
valor
! Operador
de
asignacin
=
variable = valor ! Asigna
el
valor
a
una
variable
! Se
puede
usar
en
la
declaracin
de
una
variable
int a = 0, b; b = 10; a = b;
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Operadores
aritm7cos
! Se
usan
para
calcular
operaciones
matem7cas
entre
datos
y
variables
del
mismo
7po
! El
resultado
se
puede
almacenar
en
otra
variable
del
mismo
7po
! Expresin:
Uso
conjunto
de
uno
o
mas
valores,
variables
y/o
operadores
que
se
evala
para
obtener
su
valor
nal
+
-
*
/
% ++
--
suma
resta
multiplicacin
divisin
mdulo (resto)
auto-incremento
(pre post)
auto-decremento
(pre post)
Expresiones
aritm7cas
! int a = 5 - (2 * 2);
/* a = a + 1 */
/* a=4
/* a=4
/* a=2
b=3 */
b=4 */
b=3 */
! a++;
! a=3; b=a++; ! a=3; b=++a; ! a=3; b=a--; ! f=4/3;
! b=4%3; ! f=4.0/3; ! f=(oat)4/3;
/* == 1 Div. entera */
/* == 1 == (4 (4/3)*3) */
/* == 1.333 Div. real */
/* == 1.333 Div. real */
18/01/12
Precedencia
de
operador
! Tiene
preferencia
*,
/,
%
frente
a
+,
-
! Se
evala
de
izquierda
a
derecha
! Se
pueden
usar
parntesis
num = 2 * 10 + 5; num = 2 * (10 + 5);
// num = 25 // num = 30
Asignacin
combinada
! Se
combina
un
operador
aritm7co
binario
con
una
asignacin
variable op= expresin; // op es +,-,*,/,% ! Equivale
a
variable = variable op expresin;
! Ejemplos
int a = 10; a += 10; a /= 5; a %= 6;
// a = a + 10 // a = a / 5 // a = a % 6
Operadores
de
comparacin
! Se
usan
para
comparar
datos
y
variables
de
7pos
compa7bles
! Producen
expresiones
de
7po
boolean == != > < >= <=
igual
dis7nto
Mayor
menor
mayor
o
igual
menor
o
igual
Operadores
lgicos
! Se
usan
para
operar
con
datos
y
variables
de
7po
boolean
! Producen
expresiones
de
7po
boolean ! Se
pueden
combinar
con
otras
expresiones
de
7po
boolean
&& || !
y
(and)
o
(or)
no
(not)
Operadores
lgicos
A
&&
B
A
true
true
false
false
B
true
false
true
false
Resultado
true
false
false
false
A
true
true
false
false
Expresiones
lgicas
Resultado
true
true
true
false
A
||
B
B
true
false
true
false
int a = 10; int b = 20, c = 30; boolean d, e, f, g; d = (a > b); e = (b <= c); f = d || e; // d es false // e es true // f es true
g = (a != b) && ((c < b) || (c == a)) Java
es
un
lenguaje
perezoso:
Si
conociendo
el
primer
trmino
ya
se
sabe
el
resultado,
no
se
evala
el
segundo
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)
18/01/12
Operador
condicional
! A
?
B
:
C
! Si
(A)
entonces
vale
B,
si
no
vale
C
int a = 10; int b = 20, c; char d; c = a > b ? 5 : 6; d = c < a ? X : Y;
Sintaxis
bsica,
variables
y
7pos
-
Jess
Montes
Snchez
(jmontes@.upm.es)