Tema 3. Introducción a Java. Programación Programacion Tema 3: Introducción a Java 1

Documentos relacionados
TEMA 2. Agenda. Fundamentos de JAVA

Capítulo 3. Introducción a la programación. Continuar

Datos Elementales y formato de un programa en Java

Programación Orientada a Objetos

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

Principios de Computadoras II

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández

Estructura de Datos Unidad 1: Repaso del Lenguaje Java

abril de 2017 Desarrollo de aplicaciones en Java Tipos de datos primitivos Tipos de datos Elementos de aplicaciones simples

NETBEANS JAVA PROGRAMACIÓN ORIENTADA A OBJETOS

Comprender las diferencias entre tipos de datos primitivos similares, y aprender a elegir el tipo más conveniente en cada caso.

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota:

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Introducción a Java. Introducción a Java. Programación I

Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta

Datos y tipos de datos

Introducción a Java. Dr. (c) Noé Alejandro Castro Sánchez

PROGRAMACIÓN ORIENTADA A OBJETOS (L40629) Sabino Miranda-Jiménez

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

4. Operadores Operador asignación

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

Tema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo

Los tipos de datos primitivos

Lección 2 Introducción al lenguaje C

Unidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones

INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN JAVA

VARIABLES, CONSTANTES Y EXPRESIONES ASIGNACIÓN. TIPOS ELEMENTALES. PRECEDENCIA DE LOS ESTRUCTURAS DE CONTROL. CONDICIONAL E

Java. Introducción a la Programación Orientada a Objetos

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Características de JavaScript

Los parámetros: son los campos que se comunican a los métodos de los objetos.

Tema 2: Desarrollo de Algoritmos. E.E. de Algorítmica

Tema 2: EL TIPO DE DATOS ENTERO. INSTRUCCIÓN DE ASIGNACIÓN Y DE COMPOSICIÓN SECUENCIAL

Curso de Java Introducción a la Programación II

Informática General 2016 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

JAVA 1. Introducción

Práctica 1. Entorno de Trabajo e Introducción a Java. Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos. Versión 1.0.

Java en 2 horas. Rodrigo Santamaría

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Tema 2. El lenguaje JAVA

Informática General 2018 Cátedra: Valeria Drelichman, Pedro Paleo, Leonardo Nadel, Norma Morales

JavaScript Básico. Elementos Básicos: Comentarios: Literales: Valores que puede tomar una variable o una constante.

4/14/2010. Objetivos. Que es JAVA. JAVA como plataforma. Reglas Sintácticas y de Codificación Básicas de JAVA

Taller de Programación I. Introducción a Java

Curso Fundamentos de Programación en Java

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado.

Expresiones y sentencias

Laboratorio de Arquitectura de Redes. Operadores y expresiones en lenguaje C

Programación n Orientada a Objetos Sentencias Java Parte I. Ing. Julio Ernesto Carreño o Vargas MsC.

Práctica 2. Reutilización de código Elementos básicos del lenguaje Java Definición de variables, expresiones y asignaciones

Presentación del Curso Presencial. Programación en Java Nivel Básico

Introducción al lenguaje de programación java

Programación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.

Introducción a Java LSUB. 30 de enero de 2013 GSYC

Programando en Java Día 1: introducción y tipos de datos básicos. Área de Ingeniería Telemática UPNA

Informática General Cátedra: Valeria Drelichman Pedro Paleo Leonardo Nadel Norma Morales

Lenguaje de Programación MSc. Daniel Alejandro Yucra Sotomayor

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

Java para programadores

Tema 3 Elementos básicos de programación

Java posee dos grandes categorías de tipos para las variables:

Universidad Autónoma de Tlaxcala. M.C. José Juan Hernández Mora. Primera Sesión

Conceptos Básicos. Programación

Autoestudio 2: Variables y Operadores

Curso de Java Introducción a la Programación I

LENGUAJE. Tema 2 Elementos de un programa

Formato para prácticas de laboratorio

Estructura de datos y Programación

Lección 2: Creando una Aplicación en Java. 1. Estructura del archivo de una clase. 3. Definiendo clases fundamentos

CAPITULO 2: VARIABLES Y CONSTANTES

El lenguaje C. 1. Identificadores, constantes y variables

Informática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida.

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13

Tema 2. El lenguaje de programación Java (Parte 1)

Tipos de datos y Operadores Básicos

GLOSARIO 1. Qué es bit y byte? Bit: Es la unidad mínima de información. Puede ser 0 o 1. Byte: Es el conjunto de 8 bits. Ejemplo:

3.3 Conceptos Básicos del Lenguaje Java

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

FUNDAMENTOS DE INFORMÁTICA

Expresiones y sentencias

Gestor de aplicaciones Java. Esta herramienta es el intérprete de los archivos de clase generados por el javac (compilador).

Apunte Laboratorio ALPI - El lenguaje de programación Pascal

Programación Orientada a Objetos en Java

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación.

REPASO ARRAYS O ARREGLOS UNIDIMENSIONALES EN JAVA. EJEMPLOS DE CÓDIGO. (CU00903C)

Transcripción:

Tema 3 Introducción a Java Programación 2015-2016 Programacion Tema 3: Introducción a Java 1

Agenda Programación orientada a objetos: Java Tipos de Datos Nuestro primer programa Java Operadores Resumen y Referencias Programacion Tema 3: Introducción a Java 2

Qué es Java? Lenguaje de programación de alto nivel orientado a objetos Es también una plataforma de desarrollo 1991: Sun Microsystems diseña un lenguaje para sistemas embebidos, (set-top-boxes), electrodomésticos Lenguaje sencillo, pequeño, neutro Necesidad de un nuevo lenguaje: Orientado a objetos Multiplataforma Ninguna empresa muestra interés por el lenguaje Java: tipo de café Programacion Tema 3: Introducción a Java 3

Historia de Java (I) 1010 C 1101 1010 C 1101 Programas ligeramente distintos para distintas lavadoras Solución: lavadora virtual javalavadora Ganancia: un solo programa, aunque haya que hacer tres cosas (2 JVM y un compilador) 1010 JVM 1101 1011 javac 1010 1101 JVM 0101 Programacion Tema 3: Introducción a Java 4

Compilado e interpretado El lenguaje de programación Java es inusual por el hecho de que un programa a la vez se compila e interpreta Con el compilador, un programa se traduce a un lenguaje intermedio llamado Java bytecodes estos códigos son independientes de la plataforma que será interpretado por el intérprete en la plataforma Java Programacion Tema 3: Introducción a Java 5

Compilado e interpretado Escribir una vez, ejecutar en cualquier sitio. Un programa.java puede compilarse en cualquier plataforma que tenga un compilador Java. El fichero con los códigos de bytes.class puede entonces ejecutarse en cualquier implementación de la VM de Java. Programacion Tema 3: Introducción a Java 6

Historia de Java (II) 1995: Java se presenta como lenguaje para Internet Netscape 2.0 introduce la primera JVM en un navegador web Filosofía Java: Write once, run everywhere 1997: Aparece Java 1.1. Muchas mejoras respecto a 1.0 1998: Java 1.2 (Java 2). Plataforma muy madura Apoyado por grandes empresas: IBM, Oracle, Inprise, Hewlett-Packard, Netscape, Sun 1999: Java Enterprise Edition. Revoluciona la programación en el lado servidor Programacion Tema 3: Introducción a Java 7

Características Principales de Java Orientado a Objetos Totalmente Portable Lenguaje Interpretado (compilado a código intermedio, no a código máquina) Java Virtual Machine (JVM) ByteCode: Independiente de la máquina Gestión Automática de Memoria Dinámica Recolector de basura (Garbage Collector) Sensible a Mayúsculas / Minúsculas Distribuido Robusto Seguro? Lento? Programacion Tema 3: Introducción a Java 8

Versiones 1.0 (1996) 1.1 (1997)- 1.2 (Java2) (1998) 1.3 (2000) -1.4 (2002) 1.5 (Java5.0) (2004) Java 6 (2006) Java 7 (2011) Java 8 (Marzo-2014) Múltiples Especificaciones: J8ME (Java 8 Micro Edition) J8SE (Java 8 Standard Edition) J8EE (Java 8 Enterprise Edition) Programacion Tema 3: Introducción a Java 9

Plataforma Java La plataforma Java tiene dos componentes: La Java Virtual Machine (Java VM) La Interfaz de Programación de Aplicaciones Java (Java API) Plataforma Java Como muestra la figura, Java API y la máquina virtual (virtual machine) aíslan al programa del hardware Programacion Tema 3: Introducción a Java 10

JDK (Java development kit) Compilador: javac Intérprete: java Plataforma de ejecución: JRE (Java Runtime Environment): Incluye JVM Plataforma de desarrollo: Java JDK (Java Software Development Kit): Incluye Compilador, etc. Incluye JRE Programacion Tema 3: Introducción a Java 11

Entornos RAD Productividad Modelado visual Depuración Rapidez de desarrollo Eclipse, Netbeans, Jbuilder, Symantec Café, Oracle Jdeveloper, Sun Java Workshop, IBM VisualAge, Prácticas: J8SE (Java8 Standard Edition) Gratuito: http://www.java.com/download Eclipse Gratuito: http://www.eclipse.org Versiones para Windows, Linux, etc. Programacion Tema 3: Introducción a Java 12

Ciclo de ejecución Código Fuente ByteCode Ejecución Compilador Intérprete HelloWorld.java HelloWorld.class javac java Programacion Tema 3: Introducción a Java 13

Programa = datos + instrucciones Instrucciones: operadores + control de flujo (control flow statements). Primero veremos tipos de datos, luego cómo se proporcionan a Java esos datos (cómo se ponen en la memoria), luego cómo operar con ellos y por último como ver el resultado. Ejemplo con un programa que suma dos números (en comparación con cómo se haría en una calculadora) Programacion Tema 3: Introducción a Java 14

Agenda Programación orientada a objetos: Java Tipos de Datos Nuestro primer programa Java Operadores Resumen y Referencias Programacion Tema 3: Introducción a Java 15

Tipos Básicos Java es un lenguaje fuertemente tipado. Es necesario declarar el tipo de las variables. Java dispone de ocho tipos básicos: Enteros. Son cuatro tipos para números enteros. Coma flotante. Son dos tipos para datos reales. Caracteres. Un tipo para caracteres de cualquier idioma mundial. Lógicos. Un tipo para los valores lógicos. Programacion Tema 3: Introducción a Java 16

Enteros Los números enteros en Java son siempre con signo Tienen siempre las mismas capacidades de almacenamiento, independientemente del entorno. Por defecto las constantes enteras son de tipo int Se pueden poner guiones bajos para mejorar la legibilidad: 3_123 (Java 7) Para long hay que añadir una L al final Nombre Tamaño Rango long 64 bits -9.233.372.036.854.775.808L a 9.233.372.036.854.775.807L int 32 bits -2.147.483.648 a 2.147.483.647 short 16 bits -32.768 a 32767 byte 8 bits -128 a 127 Programacion Tema 3: Introducción a Java 17

Coma Flotante Dos tipos: float y double Por defecto son de tipo double. Para float se añade una F al final del número. Hay tres valores especiales: infinito positivo Infinity, infinito negativo -Infinity y NaN (Not a number) Nombre Tamaño Rango float 32 bits ± 3.40282347E+38F double 64 bits ± 1.79769313486231570E+308 El número puede tener 15-16 cifras como máximo para el double (2^52) y 8-9 para el float (2^23), más allá se descarta (se trunca). Programacion Tema 3: Introducción a Java 18

Lógicos Para valores lógicos: el tipo boolean Sólo toma dos valores: verdadero true y falso false Se emplea en las estructuras condicionales Resulta en operaciones con operadores relacionales Es distinto de los demás e incompatible con el resto Ejemplo: boolean a; a=true; if (a) System.out.println( Es verdadero ); Programacion Tema 3: Introducción a Java 19

Caracteres Los caracteres se codifican en UNICODE ocupando 16 bits (65536 caracteres). Se pueden representar los caracteres de cualquier lenguaje. Se representan entre comillas simples. 'A' '\101' Unicode '\u0041' Secuencias de escape: Secuencia Hexadecimal '\0x41' Descripción \b Retroceso \t Tabulador \r Retorno de carro \n Nueva línea \ Comilla simple \" Comilla doble \\ Barra invertida Programacion Tema 3: Introducción a Java 20

Cadenas de caracteres En Java no hay un tipo básico para cadenas de caracteres. Se utiliza la clase String Se escriben entre comillas dobles (Todo en la misma línea, no se pueden cortar). Se pueden concatenar con el operador + Se pueden usar las secuencias de escape con String. Se pueden declarar constantes de tipo String Ejemplo: String a,b; a= Buenos ; b= días ; String c=a+b; System.out.println(c); Programacion Tema 3: Introducción a Java 21

Agenda Programación orientada a objetos: Java Tipos de Datos Nuestro primer programa Java Operadores Resumen y Referencias Programacion Tema 3: Introducción a Java 22

Creando nuestro primer programa en Java Dar el nombre al programa Guardar los datos en la memoria Mostrar por pantalla Programacion Tema 3: Introducción a Java 23

Dar nombre y crear el fichero Hay que crear una clase y guardarla en un fichero. Un programa es una clase y una clase es un programa. Nombres válidos Identificador empieza por: _ (guión bajo) $ (símbolo del dólar) Letra Continúa por: _ (guión bajo) $ (símbolo del dólar) letra número No se pueden usar palabras protegidas (int, true, class, public) Se recomienda usar nombres explicativos, ni muy largos ni muy cortos. El fichero se llama <nombreclase>.java Mayúsculas y minúsculas! Por convención el nombre de un programa debería empezar por mayúsculas. Todo el código va dentro del método main, primero los datos y luego las instrucciones. Programacion Tema 3: Introducción a Java 24

Programa Java public class Ejemplo { } public static void main(string[] args) { System.out.println( Ejemplo ); } Programacion Tema 3: Introducción a Java 25

Variables Se usan para guardar datos e información. En Java antes de usarlas es preciso declararlas. tipo identificador[=valor][,identificador[=valor]...]; Ejemplo: int var = 3456, otravar = 2143; double db = 9876.34; float fl = 876.234F; Programacion Tema 3: Introducción a Java 26

Votación S2-Votacion 0: Declaracion de variables Programacion Tema 3: Introducción a Java 27

Variables Ámbito es el bloque en el que está declarada Bloque: porción de código delimitado por dos llaves ( { y } ) 1. { 2. int a; 3. a=9; 4. { 5. int b=a+1; 6. } 7. a=10; 8. } Tiempo de vida de una variable es el tiempo (código) que va de la declaración de la variable hasta su destrucción Programacion Tema 3: Introducción a Java 28

Inicialización de variables Las variables locales no son inicializadas por el compilador. Por lo tanto es nuestra obligación inicializarlas, de lo contrario el compilador visualizará un mensaje de error en todas las sentencias que hagan referencia a esas variables. En cambio las variables miembro de una clase son inicializadas por omisión por el compilador para cada objeto que se declare de la misma. números enteros: 0 números reales: 0.0 booleanos: false; caracteres: \u0000 // carácter nulo referencias: null También si queremos pueden ser inicializadas explícitamente. Programacion Tema 3: Introducción a Java 29

Mostrar por pantalla Para comprobar que la memoria guarda lo que hemos puesto, lo imprimimos por pantalla: System.out.println(variable); System.out.print(variable); También se puede imprimir directamente un dato: System.out.println(23); Programacion Tema 3: Introducción a Java 30

Constantes Se usan para declarar variables con un valor inmutable. final int maximo= 100; final float velocidadluz= 300000.0; El valor de las constantes se proporciona en la declaración o la primera vez que se asignan Error: Si son atributos de clase, tienen valor por defecto final int numalumnos; // fija el valor a 0! numalumnos= 540; // no se puede cambiar Programacion Tema 3: Introducción a Java 31

Identificadores Se utilizan para nombrar cualquier cosa que el programador necesite usar o identificar: clases, métodos y variables. Un identificador es válido si comienza por: Una letra Un subrayado (_) Símbolo de dólar ($) Los siguientes caracteres pueden ser letras, dígitos y caracteres subrayado y dólar (no hay longitud máxima) NOTA: distingue entre letras mayúsculas y minúsculas Ejemplos Válidos: MiPrograma Mi_Programa _miprograma $mi_programa mi_primer_programa_en_java Ejemplos Incorrectos: 2Programas Mi-Programa miprograma $mi/programa mi primer programa en java Programacion Tema 3: Introducción a Java 32

Agenda Programación orientada a objetos: Java Tipos de Datos Nuestro primer programa Java Operadores Resumen y Referencias Programacion Tema 3: Introducción a Java 33

Operadores Aritméticos public class Operadores { public static void main(string [] args){ int a=9; int b=9; System.out.println(a++); System.out.println(++b); } } Operador Descripción + Suma - Resta * Multiplicación / División % Módulo ++ Incremento - - Decremento 9 10 Programacion Tema 3: Introducción a Java 34

Votación S2-Votacion 1: Operadores aritméticos Programacion Tema 3: Introducción a Java 35

Conversión de tipos Cuando en una expresión se mezclan datos con distintos tipos, se realizan conversiones de tipo Cuando es posible se realiza de forma automática. char c = a ; int i = c; short s = c; s = 678; // CORRECTO // INCORRECTO, por el signo de s En otros casos, el programador puede forzar la conversión: casting double db = 123.67; int destino = (int) db; // CORRECTO, lo trunca Programacion Tema 3: Introducción a Java 36

Conversión automática Los dos tipos son compatibles. Todos los tipos numéricos son compatibles entre si, sin importar que sean enteros o reales. El tipo char es compatible con int. El tipo boolean no es compatible con ningún otro tipo. El tipo destino es más grande que el origen Programacion Tema 3: Introducción a Java 37

Conversión explícita. Casting La conversión sigue unas reglas: Entre números enteros, si el destino es menor que el origen, el valor resultado será el resto (módulo) de la división entera del valor entre el rango del destino. Si el origen es un número real y el destino un entero, la parte decimal se trunca, y si la parte entera no cabe en el destino, se aplica en criterio del módulo. Entre números reales, se guarda el máximo valor posible. Programacion Tema 3: Introducción a Java 38

Ejercicio S2-Clase: Variables y aritméticos Programacion Tema 3: Introducción a Java 39

Promoción en expresiones Al evaluar una expresión, se produce la conversión de tipos necesaria. Java convierte los operandos al tipo mayor de los de la expresión y después evalúa la expresión Las reglas que se aplican son las siguientes: byte y short se promocionan a int. Si un valor es long la expresión se promociona a long. Si un valor es float la expresión se promociona a float. Si un valor es double la expresión se promociona a double. Un char en una expresión numérica se promociona a int. Programacion Tema 3: Introducción a Java 40

Promoción Class Promocionar{ public static void main (String args[]){ byte b = 42; char c = a ; short s = 1024; int i = 200; float f = 5.67F; double d =.2324; double result = (f*b)+(i/c)-(d*s); System.out.println( resultado = +result); } } Promociones f*b b promociona a float i/c c promociona a int d*s s promociona a double (float)+(int) promociona a float (float)-(double) promociona a double result es de tipo double Programacion Tema 3: Introducción a Java 41

Votación S3-Votacion 2: Casting Programacion Tema 3: Introducción a Java 42

Operaciones con String Operador + para cadenas String Podemos convertir las cosas a String sumándoselas a una variable String: char c='a'; int b=3; String cad2= "hola "+c+b; System.out.println(cad2); Hay una forma más ortodoxa ya la veremos: String.valueOf(tipo) Programacion Tema 3: Introducción a Java 43

Operadores Relacionales Sirven para hacer comparaciones. El resultado es tipo boolean Para comparar Strings hay que usar equals public class OperRelac { public static void main(string [] args){ String s= cadena ; String p= otra cadena ; boolean res = "cadena".equals(s); // True boolean res2 = s.equals(p); // False System.out.println(res); System.out.println(res2); } } true false Operador Descripción == Igual!= Distinto > Mayor que < Menor que >= Mayor o igual <= Menor o igual Programacion Tema 3: Introducción a Java 44

Votación S3-Votacion 3: Operadores Relacionales Programacion Tema 3: Introducción a Java 45

Operadores Lógicos Se aplican sobre operandos boolean Como resultado se obtiene un valor boolean. En cortocircuito, la expresión se evaluará hasta que se conozca el valor seguro del resultado Operador Descripción & AND OR ^ XOR && AND en cortocircuito OR en cortocircuito! NOT Programacion Tema 3: Introducción a Java 46

Votación S3-Votacion 4: Operadores Lógicos Programacion Tema 3: Introducción a Java 47

Operadores de Asignación Asigna la expresión de la derecha a la variable de la izquierda Existe la posibilidad de escribir en forma reducida operaciones Operador Descripción += Suma y asignación -= Resta y asignación *= Multiplicación y asignación /= División y asignación %= Módulo y asignación &= AND y asignación = OR y asignación ^= XOR y asignación Programacion Tema 3: Introducción a Java 48

Operadores de Asignación public class OperadoresDeAsignacion { public static void main(string[] args) { int x=5,y=2,z= 3; y+=x; System.out.println("x es:" +x); System.out.println("y es:" +y); z =x; System.out.println("z es:" +z); y/=x; System.out.println("y es:" +y); y%=x; System.out.println("y es:" +y); } } x es:5 y es:7 z es:-8 y es:1 y es:1 Programacion Tema 3: Introducción a Java 49

Paréntesis Usamos paréntesis cuando: Exista ambigüedad sobre qué operador aplicar antes que otro Se quiera dar más precedencia a unos operadores que a otros Se quiera hacer el código más legible/ entendible Programacion Tema 3: Introducción a Java 50

Precedencia Menor Mayor ()! ~ ++ -- (delante) (cast) * / % + - >> << >>> > >= <= > instanceof ==!= & ^ && Ternario asignación Programacion Tema 3: Introducción a Java 51

Ejemplos de utilización de expresiones 1. Escribir una expresión en java para determinar si un carácter es alfanumérico o no 2. Escribir una expresión en java para determinar si un año es bisiesto o no (múltiplo de 4, no múltiplo de 100, pero sí múltiplo de 400) 3. Escribir expresiones que a partir de un tiempo transcurrido en segundos escriban el número de días, horas, minutos y segundos. Programacion Tema 3: Introducción a Java 52

Ejemplos de utilización de expresiones. Solución 1. Escribir una expresión en java para determinar si un carácter es alfanumérico o no boolean alfan = (c>='a'&&c<='z') (c>='a'&&c<='z') (c>='0'&&c<='9'); 2. Escribir una expresión en java para determinar si un año es bisiesto o no (múltiplo de 4, no múltiplo de 100, pero sí múltiplo de 400) boolean bisiesto= a%4==0&&(a%100!=0 a%400==0); 3. Escribir expresiones que a partir de un tiempo transcurrido en segundos escriban el número de días, horas, minutos y segundos. int segundos=(s%60); int minutos=(s%(3600))/60; int horas=(s%(3600*24))/3600; int dias=s/(3600*24); Programacion Tema 3: Introducción a Java 53

Ejemplo precedencia operadores class EjOperadores1{ public static void main (String [] args){ int a=5,b=2,s; System.out.println("a es:"+a); System.out.println("b es:"+b); // evaluar la siguiente expresión s = a+++b*5%3+a; System.out.println("a es:"+a); System.out.println("b es:"+b); System.out.println("a+++b*5%3+a="+s); } } a es:5 b es:2 a es:6 b es:2 a+++b*5%3+a=12 Salida: a+++b*5%3+a=12 equivale a: (a++) + ((b*5) % 3) + a // resultado 12, porque la segunda a se ha incrementado // cuando se usa su valor Programacion Tema 3: Introducción a Java 54

Comentarios Es muy importante comentar bien el código: Hace el código legible y entendible Aunque ahora sepamos perfectamente lo que hace, puede que dentro de años volvamos a utilizarlo. Puede que otros programadores reutilicen nuestro código y necesitan entenderlo Es una buena práctica introducir un comentario al principio de cada archivo con la información principal sobre éste Programacion Tema 3: Introducción a Java 55

Comentarios En java, tres formas de escribir comentarios: Comentarios de una sola línea: Se utilizan los caracteres // Todo lo que se escriba a la derecha es un comentario, será ignorado por el compilador Comentarios de varias líneas: Se utilizan los caracteres /* para el principio del comentario, y */ para el final Todo lo que se escriba dentro es un comentario, será ignorado por el compilador Comentario para descripción del elemento, generando automáticamente una documentación cuando se utiliza javadoc /** comentario de documentación, una o más líneas */ Programacion Tema 3: Introducción a Java 56

Generación de datos aleatorios http://xkcd.com/221/ Programacion Tema 3: Introducción a Java 57

Números aleatorios Método interesante de la clase Math: static double random() Devuelve un valor aleatorio double mayor o igual que 0.0 y menor que 1.0 Por ejemplo para simular el lanzamiento de un dado (buscamos un entero del 1 al 6) Math.round(Math.random()*5)+1 Programacion Tema 4: Clases de utilidad 58 5

Entrada por teclado A partir de JDK 5.0 aparece la clase Scanner para obtener valores introducidos mediante el teclado. import java.util.scanner;... Scanner lee = new Scanner(System.in); int b=0; b= lee.nextint(); System.out.println(b); nextboolean(): obtiene un boolean nextbyte(): obtiene un byte nextshort(): obtiene un short nextint(): obtiene un número entero nextlong(): obtiene un número entero long nextfloat(): obtiene un número real float nextdouble(): obtiene un número real double next(): obtiene una cadena de caracteres Programacion Tema 3: Introducción a Java 59

Ejercicio S3-Clase: Casting y operadores Programacion Tema 3: Introducción a Java 60

Agenda Qué es programar? Arquitectura básica de un ordenador Breve introducción histórica a la programación Compilación vs. interpretación de programas Paradigmas de programación Programación orientada a objetos: Java Resumen y Referencias Programacion Tema 3: Introducción a Java 61

Resumen Programación Orientada a Objetos: Java Qué es Java - Historia Características principales Tipos de Datos Tipos Básicos Cadenas de Caracteres Programando en Java Variables Conversión de Tipos Operadores Aritméticos Relacionales Lógicos De asignación Paréntesis Precedencia de Operadores Comentarios Datos aleatorios Entrada por teclado Resumen Programacion Tema 3: Introducción a Java 62

Bibliografía y referencias web Variables: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html Operadores https://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html Programacion Tema 3: Introducción a Java 63