Avatar ·

Comment vérifier correctement si une chaîne est vide en Go : meilleures pratiques

Bonjour à tous ! Je viens de commencer à apprendre Go et je suis confronté à une tâche apparemment simple — vérifier si une chaîne est vide. Mais plus je lis, plus je m’embrouille. En Python, j’avais l’habitude d’écrire simplement `if not my_string:`, et cela fonctionnait. En Go, je vois plusieurs options : 1. `if len(str) == 0 { ... }` 2. `if str == "" { ... }` 3. Utiliser `len(str) == 0` Laquelle de ces méthodes est correcte ? Y a-t-il une différence de performance ? Existe-t-il une fonction intégrée comme `IsEmpty()` ? Voici un exemple de mon code où je vérifie si l’utilisateur a saisi un nom : ```go package main import ( "bufio" "fmt" "os" "strings" ) func main() { reader := bufio.NewReader(os.Stdin) fmt.Print("Введите ваше имя: ") name, _ := reader.ReadString('\n') name = strings.TrimSpace(name) // Вот тут я не знаю, как лучше проверить if len(name) == 0 { fmt.Println("Имя не может быть пустым!") } else { fmt.Printf("Привет, %s!\n", name) } } ```