Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El lenguaje de programación
Un programa Java está formado por un
Java conjunto de clases que interactúan
entre sí
La clase es la unidad básica de
programación
La ejecución depende de la clase
pública a la que se invoque con el
intérprete
Tema 2. Fundamentos de Java. Tema 2. Fundamentos de Java.
LPS 2005. 1 LPS 2005. 2
1
Literales Literales
Caracteres: un carácter UNICODE, entre comillas
simples
Valor constante de un tipo de datos ‘N’ ‘\116’ (Octal) ‘\U00A2’ (Hexadecimal)
Booleanos, siempre en minúsculas Caracteres especiales:
true y false \b retroceso
Numéricos enteros \t tabulador
\n salto de línea
Decimal: 12 0 134L (L para Long, I para Integer)
\r cambio de línea
Octal: O25 (O delante)
\” carácter comillas dobles (desinterpretado)
Hexadecimal: Ox15 (Ox delante) \’ carácter comillas simples
Numéricos reales, con punto, no con coma \\ carácter barra invertida
Double: 28.4 5.3 .65 4.87d 1e3 (es 1×103) Cadenas de caracteres de la clase String, entre
78.34e-4d (la d de double es comillas dobles
opcional al final) “Hola Mundo.” +” otro ejemlplo” + “ +es un operador
Float: 1e2f .84f 2.F (‘f’ o ‘F’ detrás del valor) concatenador de textos”
Tema 2. Fundamentos de Java. Referencia literal
Temade objeto de Java.
2. Fundamentos
LPS 2005. 7 LPS 2005. 8
null
2
Tipos primitivos Ejemplo
int i, j;
long x;
float f;
double d;
// ...
i = j; // mismo tipo
x = i; // OK
i = x; // NO, se perdería información
i = (int) x; // Se necesita casting
d = i; // OK
f = d; // NO
Tema 2. Fundamentos de Java. Tema 2. Fundamentos de Java.
LPS 2005. 13 LPS 2005. 14
Ejemplo Expresiones
public class MathDemo {
public static void main(String[] args) { Las expresiones son instrucciones que
double values[] = {11.5, 12.5, -12.5, -13.5}; devuelven un valor lógico
for (int i=0;i<values.length;i++) { Cada expresión tiene un tipo que se determina en
double current = values[i]; tiempo de compilación
System.out.println("value: "+current); Una expresión puede ser:
System.out.println("ceil: "+Math.ceil(current)); una constante (un literal): true 0 1.0
System.out.println("floor:"+Math.floor(current)); una variable x resultado
System.out.println("round: "+Math.round(current)); una combinación de constantes, variables,
System.out.println(); operadores y llamadas a métodos
x+1
}
((x==3) || b)
} Tema 2. Fundamentos de Java. Math.random() //Fundamentos
Tema 2. genera undenúmero
Java. aleatorio entre 0 y
} LPS 2005. 15 1 LPS 2005. 16
3
Operadores aritméticos Expresiones booleanas
Operadores lógicos
Operadores aritméticos unarios y lógico: x && y (cortocircuito)
preincremento: ++x x & y (completo)
postincremento: x++ o lógico: x || y (cortocircuito)
predecremento: --x x | y (completo, evalunado ambos operandos)
postdecremento: x-- negación: !x
Operadores de asignación Operadores relacionales: Comparaciones
normal: x = y igual: x == y (sólo con tipos básicos no objetos)
adición: x += y x = x + y diferente: x != y
resta: x -= y x = x - y mayor que: x>y
menor que: x<y
multiplicación: x *= y x = x * y mayor o igual que: x >= y
división: x2. /=
Tema y de Java.
Fundamentos x = x / y menor o igual que:
Tema x <=de yJava.
2. Fundamentos
LPS 2005. 19 LPS 2005. 20
Instrucciones, asignación y
Evaluación de expresiones bloque
Los operadores se
Postfix [] .(params) ++ --
Instrucción
Unarios ++ -- + - ~ !
Una orden que se le da al programa para realizar
evalúan de izquierda
Creación y
ast
new (type)
una tarea específica
Multiplicavos * / %
a derecha Aditivos + -
Asignación
Shift << >> >>> Acción que da el valor de una expresión a una
Precedencia de Relacionales < > <= >= instanceof variable
Igualdad == !=
variable = expresión;
operadores: Bitwise AND &
boolean condicion = true; // declaración y asignación
Bitwise XOR ^ de valor inicial
Bitwise OR | int numero; // declaración de entero
Logical AND && numero = Math.sqrt(90);
Logical OR || // asignación de la raíz cuadrada de 90
Condicional ?:
Tema 2. Fundamentos de Java. = *= /= %= += -= >>= Tema 2. Fundamentos de Java.
Asignación
LPS 2005. <<= >>>= &= ^=23|= LPS 2005. 24
4
Instrucciones, asignación y
bloque Instrucción condicional if
Bloque de instrucciones
if (expresión_booleana)
Conjunto de instrucciones que se
instrucción
consideran como una unidad
Están encerradas entre llaves { y }
if (expresión_booleana)
instrucción1
else
instrucción2
5
Ejemplo Bucles o Iteración: while
public class EjemploSwitch {
public static void main(String[] args) { Ejecutan de forma repetida un bloque de instrucciones hasta
int mes = 2;
switch (mes) { que se hace falsa la condición lógica
case 1: System.out.println("Enero"); break;
case 2: System.out.println("Febrero"); break; while (expresión_booleana)
case 3: System.out.println("Marzo"); break; instrucción
case 4: System.out.println("Abril"); break;
case 5: System.out.println("Mayo"); break; int a[] = { 1, 2, 3 ,4, 5};
case 6: System.out.println("Junio"); break; int sum = 0;
case 7: System.out.println("Julio"); break;
case 8: System.out.println("Agosto"); break; int i = 0;
case 9: System.out.println("Septiembre"); break;
while ( i<a.length ){
case 10: System.out.println("Octubre"); break;
case 11: System.out.println("Noviembre"); break; sum += a[i];
case 12: System.out.println("Diciembre"); break; ++i;
default: System.out.println("Este mes no }
existe"); break; } } } System.out.println("sum = " + sum);
Tema 2. Fundamentos de Java. Tema 2. Fundamentos de Java.
LPS 2005. 31 LPS 2005. 32
6
Bucles o Iteración: for Bucles o Iteración: for
Forma compacta de expresar bucles public class FactorialFor {
public static void main(String[] args) {
No sólo para un número de repeticiones int numero=9;
fijas long resultado=1;
for(int cont=1; cont <= numero; cont++){
resultado= resultado * cont;
}
for (inicialización;condición; incremento) System.out.println("El factorial es
instrucción "+resultado);
}
}