Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 9 лет назад пользователемДарья Келлер
1 Java EXPRESIONESEXPRESIONES
2 Haydeé MéndezProgramación 2 2 Expression ¿Cuál es el valor utilizado para inicializar x? int x = * 5; ¿Cuál es el valor desplegado? System.out.println(5/2.0); Algunas reglas de Java Cada operador tiene un nivel de precedencia y asociatividad Los operadores con precedencia más alta se operan primero Cuando el punto flotante es utilizado el resultado será también real x =
3 Haydeé MéndezProgramación 2 3 Expression ¿Calculará la siguiente instrucción el promedio de tres variables double? double d = a + b + c/3.0; ¿Sí, no? ¿Por qué? No, calculará otra cosa. Esto es debido a que el primero realizará la división y luego realizará la suma de los tres valores (Java utiliza la jerarquía estándar de operadores)
4 Haydeé MéndezProgramación 2 4 System.out.println Sirve para imprimir mensajes a pantalla System.out.println(hola mundo); Se puede desplegar más de un mensaje utilizando el operador + int i = 8; System.out.println(i = + 8); También el System.out.print imprime, pero no agrega un salto de línea al final System.out.print(hola ); System.out.println(mundo); hola mundo
5 Haydeé MéndezProgramación 2 5 Imprimiendo caracteres especiales Para imprimir algunos caracteres especiales Java utiliza las siguientes secuencias \bbackspace \nnewlin \ttab \rcarriage return \\backslash \double quote \single quote
6 Haydeé MéndezProgramación 2 6 Ejemplo ¿Cuál será la salida de las siguientes instrucciones? System.out.println("Person\tHeight\tShoe size"); System.out.println("======================== ="); System.out.println("Hannah\t51\"\t7"); System.out.println("Jenna\t5'10\"\t9"); System.out.println("JJ\t6'1\"\t14"); Salida Person Height Shoe size ========================= Hannah 51" 7 Jenna 5'10" 9 JJ 6'1" 14
7 Haydeé MéndezProgramación 2 7 Interesante… System.out.println (result: + 3/5); ¿Qué se imprime? result: 0 System.out.println (result: + 5 % 3); ¿Qué se imprime? result: 2 System.out.println (result: + 3/5.0); ¿Qué se imprime? result: 0.6 System.out.println (result: ); ¿Qué se imprime? result: 34.0 System.out.println (result: + (3+4.0)); ¿Qué se imprime? result: 7.0
8 Haydeé MéndezProgramación 2 8 Leyendo valores del teclado Para poder leer valores desde el teclado, primero debe crearse un objeto Scanner Para realizar esto usaremos el siguiente código Scanner stdin = new Scanner(System.in);
9 Haydeé MéndezProgramación 2 9 Scanner API public Scanner(InputStream in) // Scanner(): convenience // constructor for an InputStream public Scanner(File s) // Scanner(): convenience // constructor for a filename public int nextInt() // nextInt(): next input value as an int public short nextShort() // nextShort(): next input value as a short public long nextLong() // nextLong(): next input value as a long
10 Haydeé MéndezProgramación 2 10 Scanner API public double nextDouble() // nextDouble(): next next input // value as a double public float nextFloat() // nextFloat(): next next input value // as a float public String next() // next(): get next whitespace-free string public String nextLine() // nextLine(): return contents of input // line buffer public boolean hasNext() // hasNext(): is there a value to next
11 Haydeé MéndezProgramación 2 11 Ejemplo int x = stdin.nextInt(); double d = stdin.nextDouble(); String s = stdin.next(); String s = stdin.nextLine();
12 Haydeé MéndezProgramación 2 12 Ejemplo import java.util.*; public class ScannerUsage { public static void main (String args[]) { Scanner stdin = new Scanner (System.in); System.out.println (Ingrese un numero"); int x = stdin.nextInt(); int y; System.out.println (Ingrese otro numero"); y = stdin.nextInt(); int z = x + y; System.out.println(La suma de + x + y + y + es " + z); } }
13 Haydeé MéndezProgramación 2 13 Casting Es un procedimiento para transformar una variable primitiva de un tipo a otro, o transformar un objeto de una clase a otra, siempre y cuando haya relación de herencia entre ellas Se distinguen dos clases de casting: Implícito: no necesita código para llevarse a cabo. Ocurre cuando se realiza una conversión ancha. Explícito: si es necesario código para llevarse a cabo. Ocurre cuando se realiza una conversión estrecha.
14 Haydeé MéndezProgramación 2 14 Casting Consideremos el siguiente código: double d = 3.6; int x = Math.round(d); Java mostrará un error possible lost of precision ¿Por qué? Math.round() devuelve un valor tipo long no int ¿Cómo arreglarlo? double d = 3.6; int x = (int) Math.round(d);
15 Haydeé MéndezProgramación 2 15 Ejemplo Consideremos los siguiente ejemplos: int n = 100; long l = n; long l = 100; int num1=100; short num2=(short)num1; Ocupa 4 bytes encaja automáticamente Casting implícito Ocupa 4 bytes casting explícito
16 Haydeé MéndezProgramación 2 16 Ejemplos int num1= ; short num2=(short)num1; double num1=25.5; float num2=(float)num1; float num1=25.5; float num1=(float)25.5; Compila pero produce valores incongruente ya que se sale del rango del tipo short Funciona perfectamente Casting explícito ¿Funciona? No! Pero esto sí
17 Haydeé MéndezProgramación 2 17 Ejemplos extraños long num1 = ; long num1 = (long) ; long num1 = L long num1 = l byte num = 10; byte num = (byte)10; Esto no funciona Esto tampoco.. Cualquiera de estos dos sí ¿Cuál es la forma correcta? Ambos… entonces porque no funciona igual en el float… quién sabe… Java rules
18 Haydeé MéndezProgramación 2 18 Algunas notas No es posible realizar casting entre booleanas y cualquier otra variable primitiva. Sí es posible realizar casting entre una variable char y una variable primitiva que almacene enteros. También en el caso contrario es posible. Debe utilizarse un casting explícito en ambos casos.
19 Haydeé MéndezProgramación 2 19 Ejercicio 1 Debe realizar un programa, que lea del teclado un valor entero, el cuál representa una temperatura dada en grados Celsius Su programa debe convertir esta temperatura a su equivalente en grados Farenheit Temp°F = 32 + (9* temp°C)/5
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.