Go | Golang y sus operadores
Como todo lenguaje go, tiene sus operadores. Entre los que podemos destacar los siguientes:
Operadores Aritméticos
| Operador | Descripción | Ejemplo |
| + (suma) | Suma o adiciona dos números enteros o decimales. | 5 + 4 |
| – (resta) | Resta o quita dos números enteros o decimales. | 5 – 4 |
| * (multiplicación) | Multiplica dos números enteros o decimales. | 6*6 |
| / (división) | Obtiene el cociente de una división | 2 / 2 |
| % (modulo) | Obtiene el residuo de una división | 2 % 5 |
| ++ (incremento) | Incrementa en uno el operador de la izquierda | 2++ |
| — (decremento) | Decrementa en uno el operador de la izquierda | 3– |
Operadores Relacionales
| Operadores | Descripción | Ejemplo |
| > (mayor que) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparación de saber ¿cuál es el mayor? | (5>4) es verdadero. (5 >9) es falso. |
| < (menor que) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparación de saber ¿cuál es el menor? | (5<7) es verdadero. (5<1) es falso. |
| <= (menor o igual que) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparar si ambos números son iguales o uno es menor que el otro | (9<=9)es verdadero. (9<=10)es verdadero. (9<=2) es falso. |
| >= (mayor o igual que) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparar si ambos números son iguales o uno es mayor que el otro | (7>=7) es verdadero (7>=6) es verdadero. (7>=10) es falso. |
| == (exactamente igual a) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparar si ambos números son exactamente iguales. | (10==10) es verdadero. (10 == 9) es falso. |
| != (diferente de) | Devuelve un valor lógico (cero o uno, falso o verdadero) de la operación de comparar si ambos números no son iguales. | (5 != 8) es verdadero. (5!=5)es falso. |
Operadores Lógicos
| Operador | Descripción | Ejemplo |
| && (and) | Devuelve un valor boleano (cero o uno, falso o verdad) devolverá verdad cuando ambas condiciones que se conjugan se cumplan, devuelve falso si no se cumple una. | ((5 < 7) && (5==5)) es falso. ((5==5)&&(7<4))es verdadero |
| || (or) | Devuelve un valor boleano (cero o uno, falso o verdad), devolverá verdadero cuando al menos una condición de las que se conjugan se cumpla y falso si ninguna se cumple. | ((7==7)||(4!=4)) es verdadero. ((7!=7) || (7<7)) es falso. |
| ! (not) | Devuelve un valor boleano (cero o uno, falso o verdad), devuelve verdadero cuando al negar una condición que no se cumple y falso al negar una condición que se cumpla. | (!(7==7)) es falso. (!(4<1)) es verdad. |
Operadores de bit a bit
| Operador | Descripción | Ejemplo |
| & (conjunción and) | Realiza una operación (and) devuelve un valor boleano (1 si ninguno de los operadores es falso, de lo contrario 0) | (0011 0011 & 1100 0011) es igual a: 00000011 |
| | (disyunción or) | Realiza una operación (or), devuelve un valor boleano(1 si al menos uno de los operadores es verdadero, de lo contrario 0) | (0011 0011 | 1100 0011) es igual a: 1111 0011 |
| ^ (disyunción exclusiva xor) | Realiza una operación (xor), devuelve un valor boleano(1 si todos los operadores son distintos, de lo contario 0) | (0011 0011 ^ 1100 0011) es igual a: 1111 0000 |
| << (corrimiento de bits a la izquierda) | Los bits se mueven a la izquierda dependiendo de cuantas posiciones se indiquen | (0011 0011 << 2) es igual a: 1100 1100 |
| >> (corrimiento de bits a la derecha) | Los bits se mueven a la derecha dependiendo de cuantas posiciones se indiquen. | (0011 0011 >> 2) es igual a: 0000 1100 |
Operadores de asignación
| Operador | Descripción | Ejemplo |
| = (asignación simple) | Asigna el valor del operando de la derecha al operando de la izquierda. | a = b + A asigna el valor de la suma de (b+A) y se lo asigna a a. |
| += (suma y asignación) | Asigna al operando de la izquierda la suma de sí mismo y el operando de la izquierda. | e += i (es igual a escribir e=e+i). |
| -= (resta y asignación) | Asigna al operando de la izquierda la resta de sí mismo menos el operando de la izquierda. | e -= i (es igual a escribir e=e-i). |
| *= (multiplicación y asignación) | Asigna al operando de la izquierda la multiplicación de sí mismo y el operando de la izquierda. | a *= c (es igual a escribir a=a*c). |
| /= (división y asignación) | Asigna al operando de la izquierda la división de sí mismo entre el operando de la izquierda. | d /= c (es igual a escribir d= d/c). |
| %= (modulo y asignación) | Asigna al operando de la izquierda la resta de sí mismo menos el operando de la izquierda. | t %= i (es igual a escribir t= t%i). |
| <<= (operador de desplazamiento de bit a la izquierda y asignación) | Asigna al operando de la izquierda el resultado de aplicarle un desplazamiento de n bits a la izquierda. | x <<= 2 (es igual a escribir x = x<<2). |
| >>= (operador de desplazamiento de bit a la derecha y asignación) | Asigna al operando de la izquierda el resultado de aplicarle un desplazamiento de n bits a la derecha. | x >>= 2 (es igual a escribir x= x>>2). |
| &= (operador de conjunción de bits y asignación) | Asigna al operando de la izquierda el resultado de aplicar una conjunción con el operando de la derecha. | x &= y (es igual a escribir x = x&y). |
| |= (operador de disyunción de bits y asignación) | Asigna al operando de la izquierda el resultado de aplicar una disyunción con el operando de la derecha. | x ^= y (es igual a escribir x = x&y). |
| ^= (operador de disyunción exclusiva de bits y asignación) | Asigna al operando de la izquierda el resultado de aplicar una disyunción exclusiva con el operando de la derecha. | x ^= y (es igual a escribir x = x^y). |