Menu
Coddy logo textTech

Fatiando Slices/Arrays Existentes

Parte da seção Fundamentos do Journey de GO da Coddy — lição 80 de 109.

Você pode criar um novo slice a partir de um slice ou array existente especificando um intervalo com a sintaxe [start:end].

Crie um slice de números:

numbers := []int{10, 20, 30, 40, 50}
fmt.Println("Original:", numbers)

Extraia elementos do índice 1 ao 3 (excluindo o 3):

slice1 := numbers[1:3]
fmt.Println("Slice [1:3]:", slice1)

Resultado:

Original: [10 20 30 40 50]
Slice [1:3]: [20 30]

Você também pode omitir o índice inicial ou final:

slice2 := numbers[:2]  // Do início até o índice 2 (excluindo o 2)
slice3 := numbers[3:] // Do índice 3 até o fim
fmt.Println("Slice [:2]:", slice2)
fmt.Println("Slice [3:]:", slice3)

Resultado:

Slice [:2]: [10 20]
Slice [3:]: [40 50]
challenge icon

Desafio

Iniciante

Neste desafio, você praticará o fatiamento (slicing) de um slice existente para criar novos sub-slices. Você tem um slice de frutas e precisa criar dois novos slices a partir dele:

  1. Um slice contendo apenas as três primeiras frutas
  2. Um slice contendo apenas as duas últimas frutas

Em seguida, imprima ambos os novos slices para verificar seu trabalho.

Folha de consulta

Crie um novo slice a partir de um slice ou array existente usando a sintaxe [start:end]:

numbers := []int{10, 20, 30, 40, 50}
slice1 := numbers[1:3]  // Elementos do índice 1 ao 3 (excluindo o 3)
fmt.Println(slice1)     // [20 30]

Você pode omitir o índice inicial ou final:

slice2 := numbers[:2]  // Do início até o índice 2 (excluindo o 2)
slice3 := numbers[3:]  // Do índice 3 até o fim
fmt.Println(slice2)    // [10 20]
fmt.Println(slice3)    // [40 50]

Experimente você mesmo

package main

import "fmt"

func main() {
	// Aqui está o nosso slice original de frutas
	fruits := []string{"apple", "banana", "orange", "grape", "kiwi"}
	
	// TODO: Crie um novo slice chamado 'firstThree' contendo apenas as três primeiras frutas
	
	// TODO: Crie um novo slice chamado 'lastTwo' contendo apenas as duas últimas frutas
	
	// Imprima os resultados
	fmt.Println("First three fruits:", firstThree)
	fmt.Println("Last two fruits:", lastTwo)
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos