>백엔드 개발 >Golang >Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

青灯夜游
青灯夜游원래의
2023-01-18 17:23:142177검색

Append()는 Go 언어에서 슬라이스에 요소를 동적으로 추가하고 삭제하는 데 사용할 수 있습니다. 요소 구문 "slice = Append(slice,elem1,elem2)"를 추가했습니다. 요소 삭제는 두 가지 유형으로 나눌 수 있습니다. 1. 인덱스에서 요소를 삭제하는 방법은 "slice=append(slice[:i],slice[i+1:]...)" 구문입니다. 2. 지정된 인덱스 사이의 요소를 삭제합니다. , 구문 "slice=append(slice[:i],slice[i2:]...)".

Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, GO 버전 1.18, Dell G3 컴퓨터.

슬라이스에 요소 추가

Go 언어에서는 add()를 사용하여 슬라이스에 요소를 동적으로 추가할 수 있습니다.

slice = append(slice,elem1,elem2)
  • 괄호 안에는 첫 번째 매개변수 슬라이스 뒤에 여러 매개변수를 추가할 수 있습니다.

package  main
import "fmt"
//切片进阶操作
 
func main(){
	//append()为切片追加元素
	s1 := []string {"火鸡面","辛拉面","汤达人"}
	fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1))
	
	//调用append函数必须用原来的切片变量接收返回值
	s1 = append(s1,"小当家") //append追加元素,原来的底层数组装不下的时候,Go就会创建新的底层数组来保存这个切片
  fmt.Printf("s1=%v len(s1)=%d cap(s1)=%d\n",s1,len(s1),cap(s1))//cap增加两倍
}

Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

슬라이싱을 통한 요소 삭제

Go 언어의 요소 삭제를 위한 슬라이싱은 추가 기능을 사용하여 간접적으로 구현할 수도 있습니다.

인덱스 인덱스에서 요소 삭제

slice = append(slice[:index], slice[index+1:]...)
Parameters Description
slice 삭제할 요소의 조각입니다.
index 삭제할 인덱스입니다.

인덱스 인덱스에서 index2까지 요소 삭제

slice = append(slice[:index], slice[index2:]...)
Parameters Description
slice 슬라이스 삭제할 요소의 수입니다.
index 삭제할 인덱스를 시작합니다.
index2 삭제할 종료 인덱스입니다.

예 1: 추가 함수를 사용하여 슬라이스 인덱스 1의 요소 삭제

package main
import (
	"fmt"
)
func main() {
	//使用append函数,实现删除切片 index 处的元素
	var slice = []string{"aa", "bb", "cc"}
	fmt.Println("slice =", slice)
	slice = append(slice[:1], slice[2:]...)
	fmt.Println("slice =", slice)
}

Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

예 2: 추가 함수를 사용하여 슬라이스 인덱스 1에서 인덱스 3까지의 요소 삭제

package main
import (
	"fmt"
)
func main() {
	//使用append函数,实现删除切片 index 处的元素
	var slice = []string{"aa", "bb", "cc", "dd", "ee", "ff"}
	fmt.Println("slice =", slice)
	slice = append(slice[:1], slice[3:]...)
	fmt.Println("slice =", slice)
}

Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법

[관련 추천: Go 동영상 튜토리얼, 프로그래밍 교육]

위 내용은 Go 언어에서 슬라이스의 요소를 추가하고 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.