Avatar ·

Cómo verificar correctamente si una cadena está vacía en Go: mejores prácticas

¡Hola a todos! Acabo de empezar a aprender Go y me encontré con una tarea aparentemente simple: verificar si una cadena está vacía. Pero cuanto más leo, más me confundo. En Python solía escribir simplemente `if not my_string:` y funcionaba. En Go veo varias opciones: 1. `if len(str) == 0 { ... }` 2. `if str == "" { ... }` 3. Usar `len(str) == 0` ¿Cuál de estas formas es la correcta? ¿Hay alguna diferencia en rendimiento? ¿Quizás existe una función incorporada como `IsEmpty()`? Aquí hay un ejemplo de mi código, donde verifico si el usuario ingresó un nombre: ```go package main import ( "bufio" "fmt" "os" "strings" ) func main() { reader := bufio.NewReader(os.Stdin) fmt.Print("Ingrese su nombre: ") name, _ := reader.ReadString('\n') name = strings.TrimSpace(name) // Aquí no sé cuál es la mejor manera de verificar if len(name) == 0 { fmt.Println("¡El nombre no puede estar vacío!") } else { fmt.Printf("¡Hola, %s!\n", name) } }