Añadida sección de operadores

This commit is contained in:
Salatiel Genol 2022-10-16 12:08:10 +02:00
parent c97b70b479
commit 77f2e4130f
1 changed files with 75 additions and 4 deletions

View File

@ -14,7 +14,7 @@
*/ */
``` ```
#### Variables #### Variables mutables
Se debe usar siempre la inferencia de tipos, aunque se pueda asignar el tipo de variable. La inicialización aquí es obligatoria. Se debe usar siempre la inferencia de tipos, aunque se pueda asignar el tipo de variable. La inicialización aquí es obligatoria.
@ -28,8 +28,79 @@ var nombreVariable: Char = 'a'
var nombreVariable: String = "qwerty" var nombreVariable: String = "qwerty"
``` ```
#### Constantes #### Variables inmutables
```kotlin ```kotlin
val nombreConstante[:tipo] = valor val nombreVariableInmutable[:tipo] = valor
``` ```
#### Constantes
Las constantes se deben declarar e inicializar en ámbito global.
```kotlin
const val nombreConstante[:tipo] = valor
```
#### Operadores
Aritméticos
| Operación | Signo | Uso | Resultado |
| -------------- | ----- | ------- | --------- |
| Suma | + | a=5,b=5 | a+b=10 |
| Resta | - | a=5,b=5 | a-b=0 |
| Multiplicación | * | a=5,b=5 | a*b=25 |
| División | / | a=5,b=3 | a/b=1 |
| Módulo | % | a=5,b=3 | a%b=2 |
Unarios
| Operación | Signo | Uso | Resultado |
| --------------- | ----- | ------ | --------- |
| Cambio de signo | - | a=-1 | -a=1 |
| Convierte a int | + | a=F | +a=70 |
| Decremento | -- | a=5 | --a=4 |
| Incremento | ++ | a=5 | ++a=6 |
| Negación lógica | ! | a=true | !a=false |
De asignación
| Operación | Signo | Uso | Resultado |
| ----------------- | ----- | --- | --------- |
| Suma/asigna | += | a=5 | a+=3; 8 |
| Multiplica/asigna | *= | a=5 | a*=3; 25 |
| Resta/asigna | -= | a=5 | a-=3; 2 |
| Divide/asigna | /= | a=5 | a/=3; 1 |
| Módulo/asigna | %= | a=5 | a%=3; 2 |
| Asigna | = | a=5 | a=3; 3 |
Relacionales
| Operación | Signo | Uso | Resultado |
| ----------------- | ----- | ------- | ----------- |
| Igual a | == | a=5,b=3 | a==b; false |
| Distinto que | != | a=5,b=3 | a!=b; true |
| Menor que | < | a=5,b=3 | a<b; false |
| Mayor que | > | a=5,b=3 | a>b; true |
| Menor o igual que | <= | a=5,b=3 | a<=b; false |
| Mayor o igual que | >= | a=5,b=3 | a>=b; true |
Lógicos
| Resultado | Signo | Uso |
| ------------------------------ | ----- | --------- |
| si a es false, b no se evalúa | && | a&&b |
| si a es false, b no se evalúa | \|\| | a\|\|b |
Operaciones con bits
| Resultado | Signo | Uso |
| ------------------------------ | ------ | -------- |
| Operación AND | and() | a and b |
| Operación OR | or() | a or b |
| Operación XOR | xor() | a xor b |
| Operación NOT | inv() | a.inv() |
| Mueve en a bits de b a izq | shl() | a shl b |
| Mueve en a bits de b a dcha | shr() | a shr b |
| Igual, pero sin el signo (-) | ushr() | a ushr b |