Menu
Coddy logo textTech

Slicing de Slices/Arrays existentes

Parte de la sección Fundamentos del Journey de GO de Coddy — lección 80 de 109.

Puedes crear un nuevo slice a partir de un slice o array existente especificando un rango con la sintaxis [start:end].

Crea un slice de números:

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

Extrae elementos desde el índice 1 al 3 (excluyendo el 3):

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

Resultado:

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

También puedes omitir el índice de inicio o de fin:

slice2 := numbers[:2]  // Desde el inicio hasta el índice 2 (excluyendo el 2)
slice3 := numbers[3:] // Desde el índice 3 hasta el final
fmt.Println("Slice [:2]:", slice2)
fmt.Println("Slice [3:]:", slice3)

Resultado:

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

Desafío

Principiante

En este desafío, practicarás el rebanado (slicing) de un slice existente para crear nuevos sub-slices. Tienes un slice de frutas y necesitas crear dos nuevos slices a partir de él:

  1. Un slice que contenga solo las primeras tres frutas
  2. Un slice que contenga solo las últimas dos frutas

Luego, imprime ambos slices nuevos para verificar tu trabajo.

Hoja de referencia

Crea un nuevo slice a partir de un slice o array existente utilizando la sintaxis [start:end]:

numbers := []int{10, 20, 30, 40, 50}
slice1 := numbers[1:3]  // Elementos desde el índice 1 al 3 (excluyendo el 3)
fmt.Println(slice1)     // [20 30]

Puedes omitir el índice de inicio o de fin:

slice2 := numbers[:2]  // Desde el inicio hasta el índice 2 (excluyendo el 2)
slice3 := numbers[3:]  // Desde el índice 3 hasta el final
fmt.Println(slice2)    // [10 20]
fmt.Println(slice3)    // [40 50]

Pruébalo tú mismo

package main

import "fmt"

func main() {
	// Aquí está nuestra rebanada (slice) original de frutas
	fruits := []string{"apple", "banana", "orange", "grape", "kiwi"}
	
	// TODO: Crea una nueva rebanada llamada 'firstThree' que contenga solo las tres primeras frutas
	
	// TODO: Crea una nueva rebanada llamada 'lastTwo' que contenga solo las dos últimas frutas
	
	// Imprimir los resultados
	fmt.Println("First three fruits:", firstThree)
	fmt.Println("Last two fruits:", lastTwo)
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos