Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Universidad Nacional del Sur
Operadores y Expresiones
Ing. Ricardo Coppo
[email protected]
Primer programa en Java
Operadores y Expresiones de Java Ing. Ricardo Coppo
2
Principios de Computadoras II Universidad Nacional del Sur
Comentarios en Java
Comentario tradicional (multi-línea)
Comentario de línea
Comentario de javadoc
Operadores y Expresiones de Java Ing. Ricardo Coppo
3
Principios de Computadoras II Universidad Nacional del Sur
Comentarios y Sangría
Algunas recomendaciones:
Usar comentarios en forma adecuada
Nombre del archivo Autor Función o tarea que realiza el programa
Usar sangría para visualizar la estructura del código
Tabulaciones de 3 o 4 caracteres Usar líneas en blanco para mejorar legibilidad
Operadores y Expresiones de Java Ing. Ricardo Coppo
4
Principios de Computadoras II Universidad Nacional del Sur
Identificadores
Un identificador da nombre a las clases, variables y otros elementos del programa
Un identificador debe empezar con una letra
Se diferencian las mayúsculas y las minúsculas:
‘tiempo’ no es igual a ‘Tiempo’ )
Un identificador NO puede ser una palabra reservada
Operadores y Expresiones de Java Ing. Ricardo Coppo
5
Principios de Computadoras II Universidad Nacional del Sur
System.out
System.out es el “objeto” de salida estándar
Posee “métodos” que permiten escribir directamente en la terminal o ventana de comandos.
Son similares a los vistos en Pascal
print( “texto” ) println( “texto” ) printf( “formato”, “texto” )
// Sin fin de línea final // Imprime e inicia nueva línea // print formateado
System.out.println( “Hello world” ); Operadores y Expresiones de Java Ing. Ricardo Coppo
6
Principios de Computadoras II Universidad Nacional del Sur
Bienvenidos a Java 2
Operadores y Expresiones de Java Ing. Ricardo Coppo
7
Principios de Computadoras II Universidad Nacional del Sur
Secuencias escape
Algunos caracteres no pueden escribirse directamente en el código. Entre ellos está el “fin de línea” y el “tabulador”
Para facilitar su escritura se utiliza una notación especial denominada “secuencia escape”
La secuencia escape es una combinación de dos caracteres. La primera, (un ‘\’) alerta al compilador que a la siguiente letra se le debe dar un significado especial.
Operadores y Expresiones de Java Ing. Ricardo Coppo
8
Principios de Computadoras II Universidad Nacional del Sur
Secuencias escape Secuencia de escape \n
Nueva línea
\t
Tabulador
\\
Inserta barra invertida
\”
Inserta comillas
\r
Retroceso de carro
Operadores y Expresiones de Java Ing. Ricardo Coppo
Descripción
9
Principios de Computadoras II Universidad Nacional del Sur
Bienvenidos a Java 3
Operadores y Expresiones de Java Ing. Ricardo Coppo
10
Principios de Computadoras II Universidad Nacional del Sur
Declaración de variables
Una variable es capaz de almacenar información durante la ejecución del programa.
Posee tipo, nombre y valor.
Sintaxis: tipo identificador [ = inicializador ]; double velocidadMaxima = 100.0;
Operadores y Expresiones de Java Ing. Ricardo Coppo
11
Principios de Computadoras II Universidad Nacional del Sur
Declaración de constantes y variables
Normas de estilo
Empezar los identificadores de variable con minúscula, las palabras intermedias se inician con mayúsculas.
Ejemplo:
int alumnosAprobados;
Las constantes se escriben totalmente en mayúsculas.
Ejemplo:
Operadores y Expresiones de Java Ing. Ricardo Coppo
final static double PI = 3.1415;
12
Principios de Computadoras II Universidad Nacional del Sur
Tipos primitivos TIPO
REPRESENTACION INTERNA
RANGO
byte
Entero de 8 bits
-128 a +127
short
Entero de 16 bits
-32768 a 32767
int
Entero de 32 bits
-2-31 a 2+32-1
long
Entero de 64 bits
-2-63 a 2+63-1
float
Punto flotante de 32 bits
Mantisa de 6 dígitos significativos Exponente (10-46 a 10+38)
double
Punto flotante de 64 bits
Mantisa de 15 dígitos significativos Exponente (10-324 a 10+308)
char
Entero de 16 bits - Unicode
boolean
Valor booleano
Operadores y Expresiones de Java Ing. Ricardo Coppo
13
true - false Principios de Computadoras II Universidad Nacional del Sur
Constantes literales Número decimal
Los números de punto flotante deben llevar “.”
Número octal
Precedido con 0
045
Número hexadecimal
Precedido con 0x
0x25
Letra / carácter
Comillas simples
‘a’
Cadena
Comillas dobles
“Hola”
Operadores y Expresiones de Java Ing. Ricardo Coppo
14
int double
37 37.0
Principios de Computadoras II Universidad Nacional del Sur
Operadores y Expresiones
Los operadores permite relacionar variables y constantes para formar expresiones.
Un operador puede actuar sobre 1, 2 o 3 operandos.
Los operadores unarios se aplican sobre 1 operando Los binarios usan dos Los ternarios emplean tres
Para su estudio se debe considerar la precedencia la asociatividad (orden de evaluación) de los mismos
Operadores y Expresiones de Java Ing. Ricardo Coppo
15
Principios de Computadoras II Universidad Nacional del Sur
Operadores unarios
Actuán sobre un solo operando
Normalmente se indica como operador prefijo, aunque algunos admiten la notación postfija también. Operador -
Ejemplo -
valor
Operación Menos unario. Invierte el signo del operando numéricao
++
i++ ó ++i
Incrementa la variable. En forma postfija utiliza el valor de i en la expresión y LUEGO la incrementa. En forma prefija Incrementa primero y luego usa el valor. (Solo tiene importancia en expresiones complejas)
--
i-- ó
Decrementa la variable. Idem que el incremento
--i
Operadores y Expresiones de Java Ing. Ricardo Coppo
16
Principios de Computadoras II Universidad Nacional del Sur
Operadores binarios
Requieren dos operandos.
Java utiliza la notación “infija”, es decir, el operador se escribe entre los dos operandos op1 op2 a+b
Se dividen en operadores de asignación, aritméticos, relacionales y lógicos.
Operadores y Expresiones de Java Ing. Ricardo Coppo
17
Principios de Computadoras II Universidad Nacional del Sur
Operador de asignación simple
Modifica el valor de una variable
Puede interpretarse como un operador que retorna un resultado igual al valor asignado
Sintaxis:
Ejemplos:
identificador = expresión
a = 3 x = y delta = x2 – x1 area = ( base * altura ) / 2
Operadores y Expresiones de Java Ing. Ricardo Coppo
18
Principios de Computadoras II Universidad Nacional del Sur
Operadores aritméticos
Existen 5 operadores aritméticos en Java Operador +
suma
-
resta
*
producto (multiplicación)
/
división
%
Operadores y Expresiones de Java Ing. Ricardo Coppo
Operación que ejecuta
resto de la división entera
19
Principios de Computadoras II Universidad Nacional del Sur
Operadores aritméticos
Ejemplos a * b * c
// Observar que no se puede escribir // abc como en algebra
7 / 4
// Es división entera, el resultado // es 1
7 % 4
// Indica resto o módulo, el // resultado es 3
9 / 5
// No se puede escribir como
(a+b)*c
// El uso de paréntesis indica el // orden de evaluación
Operadores y Expresiones de Java Ing. Ricardo Coppo
20
9 5
Principios de Computadoras II Universidad Nacional del Sur
Operadores aritméticos
Coerción silenciosa (automática) Lo hace directamente el compilador cuando no presupone riesgo de pérdida de información double d = 0.0, f = 3.0; int i = 1; d = i + f;
Coerción explícita Formato:
(tipo) d = (double) i + f;
Operadores y Expresiones de Java Ing. Ricardo Coppo
21
Conversión del entero a punto flotante Principios de Computadoras II Universidad Nacional del Sur
Operadores aritméticos
Conversión automática de tipos
La regla general es que el operando de tipo de menor precisión es convertido automáticamente a la de la mayor Original
Se convierte a
Resultado
int + long
long + long
long
int + float
float + float
float
int + double
double + double
double
char + int
int + int
int
char + long
long + long
long
char + double
double + double
double
Operadores y Expresiones de Java Ing. Ricardo Coppo
22
Principios de Computadoras II Universidad Nacional del Sur
Operadores de asignación combinadas Operación
Se puede combinar una operación aritmética con la asignación
Pueden hacerse cadenas de asignación
Ejemplo
Significado
+=
a += 3
a = a+3
-=
a -= 3
a = a-3
*=
a *=3
a = a*3
/=
a /=3
a = a/3
%=
a %=3
a = a%3
a = b = c es equivalente a a = ( b = c)
Operadores y Expresiones de Java Ing. Ricardo Coppo
23
Principios de Computadoras II Universidad Nacional del Sur
Operadores aritméticos y de asignación
Operadores y Expresiones de Java Ing. Ricardo Coppo
24
Principios de Computadoras II Universidad Nacional del Sur
Operadores relacionales Operadores relacionales Operador
Ejemplo
<
a < b
b
>=
a >= b
Operación Verdad si a es menor que b (estrictamente menor) Verdad si a es menor o igual que b Verdad si a es mayor que b (estrictamente mayor) Verdad si a es mayor o igual que b
Operadores de igualdad Operador
Ejemplo
==
a == b
Verdad si a igual que b
!=
a != b
Verdad si a distinto que b
Operadores y Expresiones de Java Ing. Ricardo Coppo
Operación
25
Principios de Computadoras II Universidad Nacional del Sur
Operaciones lógicas (booleanas)
“&&” – AND a V V F F
b resultado V V F F V F F F
Operadores y Expresiones de Java Ing. Ricardo Coppo
“||” - OR a V V F F
26
b resultado V V F V V V F F
Principios de Computadoras II Universidad Nacional del Sur
Operadores lógicos Operadores lógicos Operador
Ejemplo
Operación
!
!a
Operador unario not. SI a es verdadero entonces la expresión es falsa, si a es falsa entonces la expresión es verdadera
&&
a && b
Verdad si a AND b
||
a || b
Verdad si a OR b
Operadores y Expresiones de Java Ing. Ricardo Coppo
27
Principios de Computadoras II Universidad Nacional del Sur
El operador condicional (ternario)
Se pueden realizar operaciones de selección con el operador condicional
Sintáxis:
Se ejecuta exprVerd o exprFalso de acuerdo al resultado de evaluar la condición.
El operador ‘? :’ es el único operado ternario de Java
condición ?
Operadores y Expresiones de Java Ing. Ricardo Coppo
exprVerd : exprFalso
28
Principios de Computadoras II Universidad Nacional del Sur
El operador condicional
Ejemplos ( x > 0 ) ? 3 : 5 ( x < y ) ? x : y max = ( x >= y ) ? x : y noSeHace += ( x > 0 && y > 0 ) ? x+y++ : x-y--
Operadores y Expresiones de Java Ing. Ricardo Coppo
29
Principios de Computadoras II Universidad Nacional del Sur
Precedencia de los operadores Categoría
Operadores
Asociatividad
Unarios
- ++ -- !
Der. a Izq.
Multiplicación, división y resto
* / %
Izq. a Der.
Suma y resta
+ -
Izq. a Der.
Op. relacionales
< >=
Izq. a Der.
Op. de igualdad
== !=
Izq. a Der.
And lógico (Y)
&&
Izq. a Der.
Or lógico (O)
||
Izq. a Der.
Op. condiconal
? :
Der. a Izq.
Op. asignación
= += -= *= /= %=
Der. a Izq.
Operadores y Expresiones de Java Ing. Ricardo Coppo
30
Principios de Computadoras II Universidad Nacional del Sur
Expresiones
Una expresión es una combinación de operadores, variables, e invocaciones a métodos que se evalúa para obtener un resultado.
La expresión posee tipo y valor (igual que las variables simples) que depende de los elementos que han sido utilizados en su formación
Una expresión no posee nombre.
Operadores y Expresiones de Java Ing. Ricardo Coppo
31
Principios de Computadoras II Universidad Nacional del Sur
Expresiones
Ejemplos: a + b + c
// Se evalúa de izquierda a derecha
a + b / 100
// La división tiene mayor precedencia
a = 45
// La asignación también es una // expresión, su valor es el valor // asignado
a == 45 a == b && c!= d
// Expresión condicional - booleano // Expresión condicional
Operadores y Expresiones de Java Ing. Ricardo Coppo
32
Principios de Computadoras II Universidad Nacional del Sur
Aplicación suma de enteros
Operadores y Expresiones de Java Ing. Ricardo Coppo
33
Principios de Computadoras II Universidad Nacional del Sur
Principios de Computadoras II Departamento de Ingeniería Electrónica y Computadoras Universidad Nacional del Sur
Operadores y Expresiones
Ing. Ricardo Coppo
[email protected]