Go 언어(golang)의 슬라이스는 자동으로 늘어나고 줄어들 수 있는 동적 배열입니다. 슬라이스는 기본 배열에 대한 포인터, 요소 수 및 용량을 캡슐화하는 구조입니다.
슬라이싱 구현은 기본 배열을 기반으로 하기 때문에 슬라이싱 작업은 기본 배열에 크게 좌우됩니다. 이 글에서는 몇 가지 일반적인 슬라이싱 방법과 사용법에 대해 설명합니다.
먼저 슬라이스를 만들어야 합니다. 슬라이스를 생성하는 방법에는 make 함수를 사용하는 것과 직접 선언을 사용하는 두 가지 방법이 있습니다.
make 함수 사용:
a := make([]int, 5) //길이가 5인 정수 슬라이스 생성
make 함수는 두 개의 매개변수를 허용합니다. 첫 번째 매개변수는 슬라이스 요소의 유형이고, 두 번째 매개변수는 슬라이스 요소의 유형입니다. 두 매개변수는 슬라이스의 길이입니다. 용량을 지정하려면 세 번째 매개변수를 전달할 수 있습니다.
b := make([]string, 5, 10) //길이가 5이고 용량이 10인 문자열 슬라이스 생성
직접 선언 :
c := []int{1, 2, 3, 4, 5} //5개의 요소를 포함하는 정수 슬라이스를 생성합니다
이렇게 생성된 슬라이스의 길이와 용량은 동일합니다.
인덱스로 슬라이스 요소에 액세스하는 것은 배열과 동일합니다. 예를 들어, 첫 번째 요소에 액세스하려면 다음과 같이 할 수 있습니다:
fmt.Println(c[0])
슬라이스는 변경 가능하므로 인덱스 값으로 요소를 수정할 수 있습니다. :
c[0] = 10 //첫 번째 요소를 10으로 변경
슬라이스의 추가 메서드를 사용하여 슬라이스에 요소를 추가합니다. 슬라이스 용량이 모든 요소를 수용할 만큼 크지 않으면 자동으로 확장됩니다.
예를 들어 다음 방법을 사용하여 슬라이스 끝에 요소를 추가할 수 있습니다.
c = Append(c, 6, 7, 8) //슬라이스 끝에 요소 3개 추가
단일 요소인 경우 다음과 같이 작성할 수 있습니다. 쓰기:
c = Append(c, 9) //슬라이스 끝에 요소 추가
복사 기능을 사용하여 슬라이스를 복사할 수 있습니다. 복사 함수의 첫 번째 매개변수는 대상 슬라이스이고, 두 번째 매개변수는 소스 슬라이스입니다.
예:
d := make([]int, len(c))
copy(d, c)
슬라이스를 가로채려면 [start:end] 형식의 슬라이스를 사용하세요. 그리고 새로운 조각을 얻으세요. start는 가로챌 시작 위치(닫힌 간격)를 나타내고 end는 끝 위치(열린 간격)를 나타냅니다.
예:
e := c[2:5] //세 번째부터 다섯 번째 요소를 포함하는 슬라이스를 가로채기
start를 생략하면 기본값은 0이고, end를 생략하면 기본값은 슬라이스.
Go에서는 슬라이스 요소를 직접 삭제할 수 있는 방법이 없습니다. 그러나 새 슬라이스를 다시 작성하여 요소를 간접적으로 삭제할 수 있습니다.
예를 들어, 다음 코드를 사용하여 세 번째 요소를 삭제할 수 있습니다:
f := 추가(c[:2], c[3:]...)
이런 방식으로 f는 새로운 슬라이스입니다. 여기서 세 가지 요소가 제거되었습니다.
요약
슬라이싱은 매우 강력한 데이터 유형으로, 데이터를 보다 편리하게 운영할 수 있도록 도와줍니다. 이 기사에서는 생성, 액세스, 수정, 추가, 복사, 차단 및 삭제를 포함한 몇 가지 일반적인 슬라이스 작업 방법을 소개합니다. Go 언어의 슬라이싱을 마스터하고 싶다면 공식 문서를 읽어보면 이해가 깊어질 수 있습니다.
위 내용은 golang 슬라이싱 방법을 사용하는 방법에 대해 이야기해 보겠습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!