Inférence de type avec `:=`
Fait partie de la section Fondamentaux du Journey GO de Coddy. Leçon 6 sur 109.
Explorons une manière pratique de créer et d'initialiser des valeurs en Go à l'aide de la notation abrégée :=. Cela s'appelle l'inférence de type, où Go détermine automatiquement de quel type doivent être vos données.
Pour créer un message texte, utilisez := :
message := "Hello, Go!"
fmt.Println(message)Après avoir exécuté ce code, vous verrez Hello, Go! s’afficher dans la console. Go a automatiquement compris que message devait être de type chaîne.
Créons un nombre à l’aide de := :
age := 25
fmt.Println(age)Cela affiche 25 dans la console. Go a automatiquement donné à age le type entier.
Créons un nombre décimal :
price := 19.99
fmt.Println(price)Cela affiche 19.99 dans la console. Go a automatiquement attribué à price un type à virgule flottante.
Défi
DébutantDans ce défi, tu vas t’entraîner à utiliser l’opérateur := pour l’inférence de type dans Go.
Le programme contient déjà quelques variables déclarées à l’aide du mot-clé var avec des types explicites. Ta tâche consiste à déclarer deux nouvelles variables en utilisant la syntaxe abrégée :=, qui permet à Go d’inférer automatiquement les types.
Déclare language avec la valeur "Go" et version avec la valeur 1.18.
Complète les TODO dans le code afin que le programme affiche les bonnes valeurs.
Essayez vous-même
package main
import "fmt"
func main() {
// Variables déclarées avec des types explicites
var name string = "Gopher"
var age int = 5
// TODO: Remplacez la ligne ci-dessous par une déclaration := de 'language', en utilisant la valeur demandée par la tâche
var language string = ""
// TODO: Remplacez la ligne ci-dessous par une déclaration := de 'version', en utilisant la valeur demandée par la tâche
var version float64 = 0
// Afficher toutes les variables
fmt.Println("Name:", name)
fmt.Println("Age:", age)
fmt.Println("Language:", language)
fmt.Println("Version:", version)
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs de comparaison et logiques
Opérateurs de comparaison - Partie 1Opérateurs de comparaison - Partie 2Opérateur logique ANDOpérateur logique OROpérateur logique NOTBases de la priorité des opérateursRécapitulatif - Effectuer des comparaisons7Structures de contrôle : Les boucles
Explication de la boucle `for`Boucle For - Les basesBoucle For - Condition uniquementLe mot-clé `break`Le mot-clé `continue`Boucles imbriquéesRécapitulatif - Répéter des actions2Variables et types de données de base
Qu'est-ce qu'une variableInférence de type avec `:=` Entiers (int)Nombres à virgule flottanteBooléensChaînes de caractères (Strings)Valeurs zéroConstantesConventions de nommageRécapitulatif - Variables et types5Entrées/Sorties de base
Sortie formatéeVerbes de formatageAffichage des typesSaisie utilisateur de baseRécapitulatif - Entrées et Sorties8Fonctions
Comprendre les fonctionsDéclarer une fonctionAppeler des fonctionsParamètres de fonctionRetourner une valeur uniqueRetourner plusieurs valeursValeurs de retour nomméesBases de la portée des fonctionsRécapitulatif - Créer du code réutilisable11Types composites : Slices
Introduction aux SlicesDéclaration de littéraux de SlicesCréation de Slices avec `make`Longueur vs Capacité des SlicesAccès aux éléments d'un SliceAjout d'élémentsDécoupage de Slices/Tableaux existantsItération sur les SlicesCopie de SlicesRécapitulatif - Listes dynamiques3Opérateurs de base
Opérateurs arithmétiquesOpérateur de divisionL'opérateur moduloOpérateur d'affectationOpérateurs d'affectation augmentéeIncrémentation et décrémentationRécapitulatif - Calculs6Structure de contrôle : Les conditionnelles
L'instruction `if`Le mot-clé `else`Le mot-clé `else if`Masquage de variable dans `if`Initialisation des variablesL'instruction `switch``switch` avec expressions`switch` sans expressionLe mot-clé `fallthrough`Récapitulatif - Prendre des décisions9Pointeurs
Qu'est-ce qu'un pointeur ?Déclaration de variables pointeursL'opérateur d'adresseDéréférencement de pointeursUtiliser des pointeurs dans les fonctionsPointeurs NilRécapitulatif - Comprendre les pointeurs12Types composites : Maps
Introduction aux MapsDéclaration de littéraux de MapCréation de Maps avec `make`Ajout et mise à jour de paires clé-valeurAccès aux valeurs d'une MapVérification de l'existence d'une cléSuppression d'entrées de MapTaille d'une MapItération sur les MapsRécapitulatif - Stockage clé-valeurEntraînez-vous par vous-même : Compilateur Go en ligne