Menu
Coddy logo textTech

Copie de Slices

Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 82 sur 109.

La fonction copy en Go vous permet de copier des éléments d'une slice à une autre.

Créez une slice source et une slice de destination :

source := []int{1, 2, 3}
dest := make([]int, 2)  // Destination avec une longueur de 2

// Copie de la source vers la destination
copied := copy(dest, source)

fmt.Println("Source:", source)
fmt.Println("Destination:", dest)
fmt.Println("Number of elements copied:", copied)

Résultat :

Source: [1 2 3]
Destination: [1 2]
Number of elements copied: 2

La fonction copy copie seulement autant d'éléments qu'il peut en tenir dans la tranche de destination.

challenge icon

Défi

Débutant

Dans ce défi, vous allez vous entraîner à utiliser la fonction copy pour copier des éléments d'un slice vers un autre.

Vous avez deux slices : source contenant des noms de fruits et destination qui est un slice vide avec une capacité de 3 éléments. Votre tâche consiste à copier les éléments de source vers destination en utilisant la fonction copy.

Après la copie, affichez le contenu du slice destination.

Aide-mémoire

La fonction copy copie les éléments d'une tranche (slice) vers une autre :

source := []int{1, 2, 3}
dest := make([]int, 2)  // Destination avec une longueur de 2

// Copier de la source vers la destination
copied := copy(dest, source)

fmt.Println("Source:", source)
fmt.Println("Destination:", dest)
fmt.Println("Number of elements copied:", copied)

La fonction copy ne copie que le nombre d'éléments pouvant tenir dans la tranche de destination et renvoie le nombre d'éléments copiés.

Essayez vous-même

package main

import "fmt"

func main() {
	// Tranche source avec des noms de fruits
	source := []string{"apple", "banana", "cherry", "date"}
	
	// Créer une tranche de destination avec une capacité de 3 éléments
	destination := make([]string, 3)
	
	// TODO: Utiliser la fonction copy pour copier les éléments de la source vers la destination
	
	
	// Afficher la tranche de destination
	fmt.Println("Destination slice:", destination)
}
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