Sposoby wycinania
Lekcja 5 z 21 w kursie Slice’y i mapy w Go w Coddy.
W poprzednich lekcjach omówiliśmy podstawy wycinania fragmentów oraz to, jak można je wykorzystać do zmniejszenia rozmiaru fragmentu lub tablicy. Wspomnieliśmy, że składnia wycinania fragmentów to <strong>name[start:stop]</strong>. Przyjrzyjmy się różnym sposobom użycia tego wyrażenia.
Rozważmy na przykład następujące wyrażenie:
arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:4]Oznacza to, że chcemy zacząć od indeksu 0 i przejść do 4. elementu:
[kiwi apple orange banana]Na przykład, jeśli zobaczysz takie wyrażenie:
arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[4:]Oznacza to, że zaczynamy od indeksu 4 i przechodzimy do końca fragmentu:
[grape pineapple]Jeśli zobaczysz takie wyrażenie:
arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:]Oznacza to, że zaczynamy od indeksu 0 i przechodzimy do końca fragmentu (tworząc kopię pierwotnego fragmentu):
[kiwi apple orange banana grape pineapple]Pamiętaj, że podczas wycinania fragmentów należy zwracać uwagę na długość pierwotnego fragmentu. Nie możemy użyć pozycji, której nie ma w tym fragmencie, na przykład:
arr := []string{"kiwi", "apple", "orange", "banana", "grape", "pineapple"}
newArr := arr[:8]Spowoduje to błąd, ponieważ pozycja 8 wykracza poza pojemność naszego fragmentu, a zawiera on tylko 7 elementów.
Wyzwanie
ŁatwyW podanym kodzie definiujemy wycinek złożony z 8 elementów. Musimy uzyskać cały wycinek z wyjątkiem pierwszego i ostatniego elementu. Wypisz wynik na ekranie.
Spróbuj swoich sił
package main
import "fmt"
func main() {
// Zdefiniuj wycinek
languages := []string{"C", "C++", "Java", "Python", "JavaScript", "Ruby", "Go", "Swift"}
// Wycinanie
// Wyświetl wycinek na ekranie
}Wszystkie lekcje w sekcji Slice’y i mapy w Go
1Wprowadzenie
WprowadzeniePoćwicz samodzielnie: Kompilator Go online