Tranches
Les slices sont similaires aux tableaux, mais possèdent des longueurs dynamiques, ce qui en fait une alternative plus flexible aux tableaux.
Pour créer un slice, on utilise la même syntaxe que pour les tableaux, mais dans ce cas, on omet de spécifier la taille.
Création d'un slice à l'aide du mot-clé var :
// Creates an empty slice with no elements
var sliceName [] dataType
// Creates a slice with the specified elements
var sliceName = [] dataType {element_1, element_2, ...}
Création d'un slice à l'aide de l'opérateur := :
// Creates a slice with the specified elements
sliceName := [] dataType { element_1, element_2, ... }
On peut ajouter des éléments supplémentaires à un slice en utilisant la fonction append. La fonction append retourne un nouveau slice avec les éléments ajoutés, que l'on peut ensuite stocker dans la variable du slice d'origine. Cela sera plus clair avec un exemple. La syntaxe de base de la fonction append est la suivante :
append(originalSlice, newElement1, newElement2, …)
Le code suivant illustre l'utilisation de la fonction append :
index.go
1234randomNumbers := [] int { 1, 4, 5} fmt.Println(randomNumbers) // Output: [1 4 5] randomNumbers = append(randomNumbers, 7, 9) fmt.Println(randomNumbers) // Output: [1 4 5 7 9]
De la même manière que l'on peut accéder aux éléments d'un tableau, il est également possible de référencer des portions d'un tableau en utilisant la syntaxe suivante :
index.go
1arrayName[startIndex:endIndex + 1]
Cette opération extrait tous les éléments de startingIndex à endingIndex. Il est important de noter qu'il faut indiquer endingIndex + 1. Cela deviendra plus clair avec un exemple. Par exemple :
index.go
12var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } fmt.Println(numbers[4:9]) // Output: [10 12 14 16 17]
Elle extrait les éléments des indices 4 à 9, en incluant l’élément à l’indice 4 et en excluant l’élément à l’indice 9, comme exprimé dans la syntaxe :
index.go
1arrayName[startingIndex:endingIndex + 1]
Nous pouvons également stocker cette portion extraite du tableau dans une variable, créant ainsi une tranche :
index.go
123var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } numbersPart := numbers[2:7] fmt.Println(numbersPart) // Output: [6 9 10 12 14]
Il est important de noter qu'une telle tranche fait référence à la portion du tableau à partir de laquelle elle a été créée. Par conséquent, toute modification apportée à cette tranche affectera également le tableau d'origine :
index.go
12345678910111213package main import "fmt" func main() { var pin = [4] int { 1, 2, 3, 4 } part := pin[1:3] fmt.Println(pin) // Output [1, 2, 3, 4] fmt.Println(part) // Output: [2, 3] part[0] *= 2 part[1] *= 3 fmt.Println(part) // Output [4, 9] fmt.Println(pin) // Output [1, 4, 9, 4] }
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Can you show an example of how to use the append function with slices?
How do I access or modify elements in a slice?
What happens if I append elements to a slice created from an array?
Awesome!
Completion rate improved to 1.96
Tranches
Glissez pour afficher le menu
Les slices sont similaires aux tableaux, mais possèdent des longueurs dynamiques, ce qui en fait une alternative plus flexible aux tableaux.
Pour créer un slice, on utilise la même syntaxe que pour les tableaux, mais dans ce cas, on omet de spécifier la taille.
Création d'un slice à l'aide du mot-clé var :
// Creates an empty slice with no elements
var sliceName [] dataType
// Creates a slice with the specified elements
var sliceName = [] dataType {element_1, element_2, ...}
Création d'un slice à l'aide de l'opérateur := :
// Creates a slice with the specified elements
sliceName := [] dataType { element_1, element_2, ... }
On peut ajouter des éléments supplémentaires à un slice en utilisant la fonction append. La fonction append retourne un nouveau slice avec les éléments ajoutés, que l'on peut ensuite stocker dans la variable du slice d'origine. Cela sera plus clair avec un exemple. La syntaxe de base de la fonction append est la suivante :
append(originalSlice, newElement1, newElement2, …)
Le code suivant illustre l'utilisation de la fonction append :
index.go
1234randomNumbers := [] int { 1, 4, 5} fmt.Println(randomNumbers) // Output: [1 4 5] randomNumbers = append(randomNumbers, 7, 9) fmt.Println(randomNumbers) // Output: [1 4 5 7 9]
De la même manière que l'on peut accéder aux éléments d'un tableau, il est également possible de référencer des portions d'un tableau en utilisant la syntaxe suivante :
index.go
1arrayName[startIndex:endIndex + 1]
Cette opération extrait tous les éléments de startingIndex à endingIndex. Il est important de noter qu'il faut indiquer endingIndex + 1. Cela deviendra plus clair avec un exemple. Par exemple :
index.go
12var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } fmt.Println(numbers[4:9]) // Output: [10 12 14 16 17]
Elle extrait les éléments des indices 4 à 9, en incluant l’élément à l’indice 4 et en excluant l’élément à l’indice 9, comme exprimé dans la syntaxe :
index.go
1arrayName[startingIndex:endingIndex + 1]
Nous pouvons également stocker cette portion extraite du tableau dans une variable, créant ainsi une tranche :
index.go
123var numbers = [10] int { 2, 4, 6, 9, 10, 12, 14, 16, 17, 19 } numbersPart := numbers[2:7] fmt.Println(numbersPart) // Output: [6 9 10 12 14]
Il est important de noter qu'une telle tranche fait référence à la portion du tableau à partir de laquelle elle a été créée. Par conséquent, toute modification apportée à cette tranche affectera également le tableau d'origine :
index.go
12345678910111213package main import "fmt" func main() { var pin = [4] int { 1, 2, 3, 4 } part := pin[1:3] fmt.Println(pin) // Output [1, 2, 3, 4] fmt.Println(part) // Output: [2, 3] part[0] *= 2 part[1] *= 3 fmt.Println(part) // Output [4, 9] fmt.Println(pin) // Output [1, 4, 9, 4] }
Merci pour vos commentaires !