>  기사  >  백엔드 개발  >  Golang의 슬라이싱 및 추가() 기능을 사용하는 방법에 대해 이야기해 보겠습니다.

Golang의 슬라이싱 및 추가() 기능을 사용하는 방법에 대해 이야기해 보겠습니다.

PHPz
PHPz원래의
2023-04-27 09:08:30883검색

Golang의 슬라이스에서 Append()는 매우 중요한 기능이자 자주 사용되는 기능입니다. 이번 글에서는 Golang의 슬라이싱과 Append() 기능을 사용하는 방법을 소개하겠습니다.

1. Golang 슬라이싱

슬라이싱은 배열에 비해 Golang에서 더 강력한 기능을 가지고 있습니다. 슬라이스는 길이가 동적으로 변경될 수 있다는 점에서 배열과 다릅니다. Golang에서 슬라이스는 기본 배열을 가리키는 참조 유형입니다. 슬라이스 용량이 부족하면 필요에 따라 슬라이스 크기가 자동으로 늘어납니다.

슬라이스 정의 방법은 다음과 같습니다.

var s1 []int // []int 表示定义了一个 int 类型的切片

이때 기본 배열이 정의되지 않았기 때문에 s1의 길이와 용량은 모두 0입니다.

길이가 5이고 용량이 10인 슬라이스는 make() 함수를 사용하여 구현할 수 있습니다.

s2 := make([]int, 5, 10) // 长度为 5,容量为 10

slice[index]는 본질적으로 기본 배열의 요소인 슬라이스의 요소에 액세스할 수 있습니다. Slice[start:end]는 시작(포함)부터 끝(제외)까지 하위 슬라이스를 가져올 수 있습니다. 예:

a := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
fmt.Println(a[3])    // 4
fmt.Println(a[1:5])  // [2 3 4 5]
fmt.Println(a[:5])   // [1 2 3 4 5]
fmt.Println(a[5:])   // [6 7 8 9 10]
fmt.Println(a[:])    // [1 2 3 4 5 6 7 8 9 10]

2.append() 함수

append() 함수는 슬라이스 끝에 요소를 추가하고 새 슬라이스를 반환할 수 있습니다. Append() 함수는 다음과 같은 용도로 사용됩니다.

1. 슬라이스 끝에 요소를 추가합니다

다음 코드는 s1에 요소를 추가하고 새 슬라이스를 생성합니다.

s1 := []int{1, 2, 3, 4, 5}
s2 := append(s1, 6, 7)
fmt.Println(s1) // [1 2 3 4 5]
fmt.Println(s2) // [1 2 3 4 5 6 7]

참고: add() 함수를 사용하여 슬라이스에 요소를 추가할 때 용량이 초과되지 않으면 기본 어레이가 변경되지 않습니다. 용량이 초과되면 새 기본 어레이가 생성됩니다.

2. 한 슬라이스를 다른 슬라이스에 추가합니다.

다음 코드는 s2의 요소를 s1에 추가하여 새 슬라이스를 생성합니다.

s1 := []int{1, 2, 3, 4, 5}
s2 := []int{6, 7}
s3 := append(s1, s2...)
fmt.Println(s1) // [1 2 3 4 5]
fmt.Println(s2) // [6 7]
fmt.Println(s3) // [1 2 3 4 5 6 7]

참고: 하나의 슬라이스를 다른 슬라이스에 추가하려면 추가() 함수를 사용하세요. s2 뒤에 점 3개(...)를 추가하여 s2가 분할되고 요소가 제거되었음을 나타냅니다.

3.append()를 통해 새 슬라이스를 생성합니다.

다음 코드는 길이가 0이고 용량이 0인 슬라이스 s1을 만든 다음 여기에 요소를 추가합니다.

var s1 []int
s1 = append(s1, 1)
s1 = append(s1, 2, 3)
fmt.Println(s1) // [1 2 3]

append() 함수는 새로 생성된 슬라이스, 원래 슬라이스 길이가 충분하지 않으면 새 배열이 생성되므로 슬라이스 길이가 0일 때 Append() 함수를 사용할 수 있습니다.

3. 요약

이번 글의 소개를 통해 Golang의 슬라이싱과 Append() 함수의 사용법을 알아보았습니다. 슬라이싱은 Golang에서 매우 중요하며 실제 개발에서도 매우 자주 사용됩니다. Golang 개발자가 슬라이싱의 기본 사용법을 익히는 것은 매우 중요합니다. Append() 함수를 사용할 때 반환 값에 주의해야 하며, 하나의 슬라이스를 분할하고 다른 슬라이스에 추가하기 위해 ... 연산자를 사용하는 데 특별한 주의가 필요합니다.

위 내용은 Golang의 슬라이싱 및 추가() 기능을 사용하는 방법에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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