Menu
CoddyTech

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 int

Ajouter 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].

challenge icon

Défi

Facile

Le programme lit un nombre dans l’entrée, puis autant de scores, un par ligne.

  1. Déclare scores comme un tableau typé vide d’entiers
  2. Lis chaque score, convertis-le avec int() et ajoute-le à scores
  3. Affiche scores, puis Best: suivi du score le plus élevé

Pour l’entrée ci-dessous, la sortie est :

3
70
95
88
[70, 95, 88]
Best: 95

Essayez 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é
quiz iconTestez-vous

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

Entraînez-vous par vous-même : Compilateur GDScript en ligne