Menu
Coddy logo textTech

Dodawanie elementu do wycinka

Lekcja 3 z 21 w kursie Slice’y i mapy w Go w Coddy.

Na poprzednich lekcjach omówiliśmy, że różnica między wycinkiem a tablicą polega na ich rozmiarze, co staje się widoczne podczas sprawdzania długości.

Na przykład, jeśli zdefiniujemy wycinek w ten sposób:

nums := []int{23, 5, 6}

Nasz wycinek ma trzy elementy, a sprawdzenie długości za pomocą funkcji <strong>len()</strong> daje nam 3:

nums := []int{23, 5, 6}
fmt.Println(len(nums)) // 3

Jeśli dodamy elementy do wycinka i sprawdzimy jego rozmiar, otrzymamy nowy rozmiar:

nums := []int{23, 5, 6, 9, 22}
fmt.Println(len(nums)) // 5

Natomiast tablica ma stały rozmiar. Na przykład:

nums := [4]int{23}
fmt.Println(len(nums)) // 4

Mimo że ma mniej niż 4 elementy, jej długość pozostaje stała.

Elementy dodaje się do wycinka za pomocą <strong>append</strong>:

books := []string{"Python", "Rust"}
books = append(books, "Golang")
fmt.Println(books)

Wynik uruchomienia tego kodu:

[Python Rust Golang]

W języku Golang wycinki mają wbudowane funkcje, a <strong>append()</strong> jest jedną z nich i umożliwia dodawanie nowych elementów do istniejącego wycinka.

Pamiętaj, że ze względu na dynamiczny rozmiar wycinków nie możemy używać indeksu do dodawania elementów (<strong>books[2] = "Golang"</strong> nie zadziała).

challenge icon

Wyzwanie

Łatwy

Napisz program, który pobiera od użytkownika 3 dane wejściowe i dodaje je do tablicy o nazwie <strong>coddy</strong>, zgodnie z definicją w podanym kodzie. Wykonaj następujące kroki:

  1. Wypisz długość tablicy przed dodaniem elementów.
  2. Dodaj elementy do tablicy.
  3. Wypisz tablicę i zaktualizowaną długość po dodaniu elementów (w osobnych wierszach).

Spróbuj swoich sił

package main

import "fmt"

func main() {
    // Pobierz dane wejściowe od użytkownika. Nie zmieniaj tego!
    var first, second, third string
	fmt.Scan(&first)
	fmt.Scan(&second)
	fmt.Scan(&third)
	// Zdefiniuj wycinek
    coddy := []string {"SQL","Rust","C#","Golang"}
    // Wypisz długość
    
    // Dodaj element do wycinka
    
    // Wypisz wycinek i jego zaktualizowaną długość

}

Wszystkie lekcje w sekcji Slice’y i mapy w Go

Poćwicz samodzielnie: Kompilator Go online