apuntes:operadores
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
apuntes:operadores [2019/02/10 20:52] – created Santiago Faci | apuntes:operadores [2023/06/04 11:20] (current) – [Operador condicional] Santiago Faci | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Los operadores ====== | ====== Los operadores ====== | ||
+ | |||
+ | ===== Los operadores unarios ===== | ||
+ | |||
+ | Los operadores unarios actúan sobre una sola variable: | ||
+ | |||
+ | * Operador '' | ||
+ | |||
+ | <code java> | ||
+ | int x = 10; | ||
+ | System.out.println(++x); | ||
+ | System.out.println(x++); | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador '' | ||
+ | |||
+ | <code java> | ||
+ | int x = 10; | ||
+ | System.out.println(--x); | ||
+ | System.out.println(x--); | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador '' | ||
+ | |||
+ | <code java> | ||
+ | boolean terminado = false; | ||
+ | System.out.println(!terminado); | ||
+ | </ | ||
+ | |||
+ | * Operador '' | ||
+ | | ||
+ | <code java> | ||
+ | int x = -100; | ||
+ | int y = 500; | ||
+ | int z = -y; | ||
+ | System.out.println(x); | ||
+ | System.out.println(y); | ||
+ | System.out.println(z); | ||
+ | </ | ||
+ | |||
+ | * Operador '' | ||
+ | ===== Los operadores aritméticos ===== | ||
+ | |||
+ | Los operadores aritméticos permiten realizar operaciones aritméticos entre dos o más variable o expresiones: | ||
+ | |||
+ | * Operador suma '' | ||
+ | |||
+ | <code java> | ||
+ | int valor = 3 + 3 + otraVariable; | ||
+ | </ | ||
+ | |||
+ | * Operador resta '' | ||
+ | |||
+ | <code java> | ||
+ | int valor = 3 - otraVariable; | ||
+ | </ | ||
+ | |||
+ | * Operador multiplicación '' | ||
+ | |||
+ | <code java> | ||
+ | float peso = miPeso * 10f; | ||
+ | </ | ||
+ | |||
+ | * Operador división ''/'' | ||
+ | |||
+ | <code java> | ||
+ | double distancia = 100.23 / 4; | ||
+ | </ | ||
+ | |||
+ | * Operador módulo '' | ||
+ | |||
+ | <code java> | ||
+ | int modulo = 2 % 1; | ||
+ | </ | ||
+ | |||
+ | ===== Los operadores de asignación ===== | ||
+ | |||
+ | Los operadores de asignación permite asignar el resultado de una operación o valor a una variable, o que dicho valor sea utilizado como operando de otra operación o expresión. Además, existen algunos operadores que combinan operaciones aritméticas y permiten asignar al mismo tiempo el resultado de dicha operación. | ||
+ | |||
+ | * Operador de asignación '' | ||
+ | |||
+ | <code java> | ||
+ | int x = 2; | ||
+ | System.out.println(x); | ||
+ | int y; | ||
+ | y = x * 10; | ||
+ | System.out.println(y); | ||
+ | </ | ||
+ | |||
+ | * Operador de asignación suma '' | ||
+ | |||
+ | <code java> | ||
+ | int x = 10; | ||
+ | x += 2; | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador de asignación resta '' | ||
+ | |||
+ | <code java> | ||
+ | int x = 10; | ||
+ | x -= 1; | ||
+ | System.out.println(x); | ||
+ | x -= 10 + 2; | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador de asignación multiplicación '' | ||
+ | | ||
+ | <code java> | ||
+ | int x = 10; | ||
+ | x *= 2 + 3; | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador de asignación división ''/ | ||
+ | | ||
+ | <code java> | ||
+ | int x = 100; | ||
+ | x /= 8 + 2; | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | * Operador de asignación módulo '' | ||
+ | | ||
+ | <code java> | ||
+ | int x = 9; | ||
+ | x %= 3 - 1; | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | {{ arithmetic-assignment-operators.png }} | ||
+ | < | ||
+ | |||
+ | ===== Los operadores de comparación ===== | ||
+ | |||
+ | El resultado una expresión de comparación siempre es booleano, podrá cumplirse (valor '' | ||
+ | |||
+ | * Operador igual que '' | ||
+ | | ||
+ | <code java> | ||
+ | System.out.println(10 == 3); // false | ||
+ | int x = 3; | ||
+ | int y = 3; | ||
+ | System.out.println(x == y); // true | ||
+ | </ | ||
+ | |||
+ | * Operador distinto que '' | ||
+ | | ||
+ | <code java> | ||
+ | System.out.println(10 != 3); // true | ||
+ | int x = 3; | ||
+ | int y = 3; | ||
+ | System.out.println(x != y); // false | ||
+ | </ | ||
+ | |||
+ | * Operador mayor que ''>'' | ||
+ | | ||
+ | <code java> | ||
+ | System.out.println(10 > 3); // true | ||
+ | </ | ||
+ | |||
+ | * Operador mayor o igual que ''> | ||
+ | | ||
+ | <code java> | ||
+ | System.out.println(3 >= 3); // true | ||
+ | </ | ||
+ | |||
+ | * Operador menor que ''<'' | ||
+ | | ||
+ | <code java> | ||
+ | System.out.println(10 < 3); // false | ||
+ | </ | ||
+ | |||
+ | * Operador menor o igual que ''< | ||
+ | |||
+ | <code java> | ||
+ | System.out.println(2 <= 3); // true | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | {{ comparison-operators.png }} | ||
+ | < | ||
+ | |||
+ | ===== El operador de concatenación ===== | ||
+ | | ||
+ | El operador de concatenación permite añadir a una cadena de texto el contenido de otra. En Java se utiliza el mismo operador que para sumar números, pero al usarse con cadenas de texto funciona como operador de concatenación. | ||
+ | |||
+ | <code java> | ||
+ | String unaCadena = "Esto es "; | ||
+ | String otraCadena = "una cadena"; | ||
+ | String cadena = unaCadena + otraCadena; | ||
+ | System.out.println(cadena); | ||
+ | </ | ||
+ | |||
+ | ===== Orden de evaluación de los operadores ===== | ||
+ | |||
+ | Es importante tener en cuenta el orden de evaluación de los operadores ya que, en algunos casos, definen el resultado de la operación. Pongamos algún ejemplo: | ||
+ | |||
+ | <code java> | ||
+ | int x = 3 + 2 * 5 | ||
+ | System.out.println(" | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | Si se quiere alterar la precedencia de algunos operadores o el orden de evaluación de las expresiones, | ||
+ | |||
+ | Además, los operadores unarios tienen siempre precedencia sobre el resto de operadores. | ||
+ | |||
+ | <code java> | ||
+ | int x = (3 + 2) * 5 | ||
+ | System.out.println(" | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | <code java> | ||
+ | int x = (3 + 2) * 5 + (3 * 2 * (3 + 2)) | ||
+ | System.out.println(" | ||
+ | System.out.println(x); | ||
+ | </ | ||
+ | |||
+ | ===== Operadores pre/pos incremento ===== | ||
+ | |||
+ | < | ||
+ | {{ pre-pos-operators.png }} | ||
+ | < | ||
+ | |||
+ | ===== Operadores combinados ===== | ||
+ | |||
+ | < | ||
+ | {{ compound-operators.png }} | ||
+ | < | ||
+ | |||
+ | ===== Operadores lógicos ===== | ||
+ | |||
+ | < | ||
+ | {{ logical-operators.png }} | ||
+ | < | ||
+ | |||
+ | ===== Operador condicional ===== | ||
+ | |||
+ | Es un operator ternario que permite asignar un valor u otro a una variable en función de que se cumpla o no una condición. Es una forma reducida de utilizar una sentencia '' | ||
+ | |||
+ | La síntaxis del operador es: | ||
+ | |||
+ | <code java> | ||
+ | resultado = condicion ? valorSiVerdadero: | ||
+ | </ | ||
+ | |||
+ | Veamos un par de ejemplos: | ||
+ | |||
+ | En este caso se asignará un valor a la cadena de texto dependiendo de si el número es par o impar: | ||
+ | <code java> | ||
+ | int numero = 10; | ||
+ | String cadena = 10 % 2 == 0 ? "Es número par" : "Es número impar"; | ||
+ | </ | ||
+ | |||
+ | Y en este otro ejemplo, se parsea la cadena de forma segura | ||
+ | |||
+ | <code java> | ||
+ | String valor = " | ||
+ | int cantidad = valor.equals("" | ||
+ | </ | ||
---- | ---- | ||
- | (c) 2019 Santiago Faci | + | (c) 2021-{{date> |
apuntes/operadores.1549831927.txt.gz · Last modified: 2019/02/10 20:52 by Santiago Faci