Tableaux typés
Fait partie de la section Fondamentaux du Journey GDScript de Coddy. Leçon 68 sur 92.
Un tableau classique accepte des valeurs de n’importe quel type. Un tableau typé n’accepte qu’un seul type, écrit entre crochets après Array :
var scores: Array[int] = [90, 85, 77]
var players: Array[String] = ["Ana", "Ben"]
var bonuses: Array[int] = []GDScript vérifie chaque valeur. Une valeur du mauvais type entre crochets est signalée avant l’exécution du programme :
var scores: Array[int] = [90, "high"] # Erreur : "high" n'est pas un intAjouter une valeur du mauvais type pendant l’exécution du programme est également une erreur, et la valeur n’est pas ajoutée :
var scores: Array[int] = [90, 85]
var bonus = "ten"
scores.append(bonus) # Erreur, scores reste [90, 85]L’inférence de type avec := ne crée pas un tableau typé : var scores := [90, 85] est un simple Array. Écris Array[int] pour en obtenir un.
Comme un tableau typé connaît le type de ses éléments, var best := scores[0] infère int. Avec un tableau ordinaire, la même ligne provoque une erreur, car ses éléments peuvent être de n’importe quel type.
Les tableaux typés ont les mêmes indices et méthodes que les tableaux ordinaires, et print(scores) les affiche de la même manière : [90, 85].
Défi
FacileLe programme lit un nombre dans l’entrée, puis autant de scores, un par ligne.
- Déclare
scorescomme un tableau typé vide d’entiers - Lis chaque score, convertis-le avec
int()et ajoute-le àscores - Affiche
scores, puisBest:suivi du score le plus élevé
Pour l’entrée ci-dessous, la sortie est :
3
70
95
88[70, 95, 88]
Best: 95Essayez vous-même
extends Node
func _ready():
var count := int(OS.read_string_from_stdin())
# 1. Déclare scores, un tableau typé de int vide
# 2. Lis count scores et ajoute chacun au tableau
# 3. Affiche scores, puis "Best: " et le score le plus élevé
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, partie 1
Opérateurs arithmétiquesDivision entièreOpérateur moduloRaccourcis arithmétiquesRécapitulatif – calculs simplesOpérateurs de comparaison7Entrées/sorties de base
SortieSortie avec des variablesFormatage des chaînesEntréeConversion de typeRécapitulatif - Jusqu’à 120Récapitulatif - Vrai ou faux10Fonctions
Déclarer une fonctionArgumentsValeur de retourTypes de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de l’addition
Message de bienvenueSaisie des données11FizzBuzz avec une touche originale
Présentation du jeuLa fonction FizzBuzz14Tableaux : notions avancées
Découpage des tableauxOpérateurs de séquenceAppartenanceTrier et inverser3Variables, partie 2
Déclaration de typeInférence de typeConstantesRécapitulatif - Initialiser les variablesConversion de type6Prise de décision
Instruction ifIf - ElseRécapitulatif - Calculatrice simpleIf - Else imbriquésInstruction match9Boucles
Boucle forBoucle whileBreakContinueRécapitulatif - FactorielleLa fonction rangeBoucle imbriquéeRécapitulatif - Saisie dynamique12Notions de base sur les tableaux
Déclarer un tableauAccéder aux éléments d’un tableauModifier des tableauxMéthodes des tableauxRécapitulatif - Tableau des produitsRécapitulatif - Tableau inverséTableaux typésEntraînez-vous par vous-même : Compilateur GDScript en ligne