Sunteți pe pagina 1din 8

18/01/12

Contenidos

Sintaxis bsica, variables y 7pos


Curso de Programacin en Java
Jess Montes Snchez jmontes@.upm.es

! Sintaxis bsica ! Variables y 7pos ! Entrada/Salida bsica ! Operadores y expresiones

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Estructura de un programa Java


! Un programa en Java es un conjunto de archivos .java que con7enen la implementacin de una o mas clases java

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

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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

Comentarios Clase principal

// Clase holaMundo public class holaMundo {

/* 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

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

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;

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Otros elementos del lenguaje


! Palabras reservadas
! Palabras propias del lenguaje Java ! Con signicado especco ! El resaltado de sintaxis las iden7ca ! class, public, void, int

Variables y 7pos

! Sensibilidad a maysculas y minsculas (case sensi4ve)


! Java hace dis7ncin entre maysculas y minsculas ! Importante tanto para palabras reservadas como para iden7cadores

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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

Zapatos El par de zapatos concreto que contenga

Tipo: Valor:

Lquido El lquido concreto que contenga

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

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

! Nmero entero: ! Nmero real:

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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, #

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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):

! Notacin decimal o cienqca ! Dos niveles de precisin: float y double

! Tres niveles de precisin: short, int y long

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

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;

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

18/01/12

Conversin de 7pos
long a = 1; int b = a;

! Forma correcta:

Entrada/salida bsica
long a = 1; int b = (int)a;

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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;

Salida de datos bsica


! Para mostrar una lnea de texto por la terminal se usa:
System.out.print(expr) System.out.println(expr)

! Donde expr es una expresin de Java que queramos mostrar. ! Ejemplo:


int a = 0; String cadena = Hola; System.out.println(a); System.out.print(cadena);


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
}

Entrada de datos bsica


! Clase de biblioteca java.u7l.Scanner
import java.util.Scanner; public class EntradaInteractiva { public static void main(String [] args) { / stdIn es un identificador, puede llamarse como queramos. Recordad llamarlo igual despus / Scanner stdIn = new Scanner(System.in); System.out.print(Escribe un nmero:); int num = stdIn.nextInt(); System.out.println(num); }

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

Entrada de datos bsica


! Leyendo cadenas de caracteres con java.u7l.Scanner
import java.util.Scanner; public class EntradaInteractiva { public static void main(String [] args) { Scanner stdIn = new Scanner(System.in); System.out.print(Dime tu nombre:); String nombre = stdIn.next(); System.out.println(nombre); } }

Operadores y expresiones

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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;

Auto-incremento y auto- decremento


! Son operadores unarios (se aplican sobre una nica variable) ! Suman o restan 1 al valor de la variable ! Los pre se aplican antes de evaluar la expresin y los post despus int a = 0; a++; // Ahora a vale 1 a--; // Ahora a vale 0 int b = (2*a++) // b vale 0 y a 1 int c = 2*(++a) // c vale 4 y a 2
Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)


/* == 1 Div. entera */

/* == 1 == (4 (4/3)*3) */

/* == 1.333 Div. real */

/* == 1.333 Div. real */

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

Sintaxis bsica, variables y 7pos - Jess Montes Snchez (jmontes@.upm.es)

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)

S-ar putea să vă placă și