Удаление элемента из среза

thmn8

Администратор
Сообщения
1 314
Реакции
310
Сайт
tehadm.ru
Для удаления элемента из среза в GoLand можно использовать функцию append() в сочетании с указанием диапазона в срезе.

Код:
package main

import "fmt"

func main() {
    slice := []int{1, 2, 3, 4, 5}

    // Предположим, что нам нужно удалить элемент с индексом 2
    indexToRemove := 2

    // Используем операторы диапазона для создания нового среза,
    // исключая элемент с указанным индексом
    newSlice := append(slice[:indexToRemove], slice[indexToRemove+1:]...)

    fmt.Println(slice)     // [1 2 3 4 5]
    fmt.Println(newSlice)  // [1 2 4 5]
}

В данном примере есть исходный срез slice = [1 2 3 4 5]. Мы хотим удалить элемент с индексом 2, который имеет значение 3.
Используя операторы диапазона slice[:indexToRemove] и slice[indexToRemove+1:], мы создаем новый срез newSlice, который исключает элемент с указанным индексом.
Затем мы используем функцию append() с троеточием ..., чтобы добавить все элементы из диапазона слайсов в новый срез.
В результате получаем исходный срез slice = [1 2 3 4 5] и новый срез newSlice = [1 2 4 5], где элемент с индексом 2 (значение 3) был успешно удален.
 
Назад
Верх Низ