Junior — Middle
¿Qué tipos de datos incorporados en Go permiten realizar operaciones de comparación?
sobes.tech AI
Respuesta de la IA
En Go, las operaciones de comparación son compatibles con los siguientes tipos de datos integrados:
- Valores booleanos (
bool): se pueden comparar por igualdad y desigualdad. - Tipos numéricos (
int,float32,float64,uint, etc.): soportan todas las operaciones de comparación estándar (==,!=,<,>,<=,>=). - Cadenas (
string): se comparan lexicográficamente usando los operadores==,!=,<,>,<=,>=. - Punteros: se comparan por igualdad y desigualdad (si apuntan al mismo objeto o a
nil). - Interfaces: se comparan por igualdad y desigualdad si los tipos dinámicos y los valores son comparables.
- Arreglos: se comparan elemento por elemento si los elementos son comparables.
Los tipos que no se pueden comparar directamente, como las rebanadas (slice), mapas (map), funciones (func), no soportan operaciones de comparación, excepto la comprobación contra nil.
Ejemplo de comparación de cadenas y números:
package main
import "fmt"
func main() {
a := 10
b := 20
fmt.Println(a < b) // true
s1 := "apple"
s2 := "banana"
fmt.Println(s1 == s2) // false
}