【머리말】
Go 언어의 슬라이스는 매우 일반적인 데이터 구조이며 동적 배열 작업에 자주 사용됩니다. 사용 중에는 슬라이스 추가, 삭제, 확인, 수정과 같은 작업을 수행해야 하는 경우가 많으며 Go 언어는 이러한 작업을 구현하기 위한 몇 가지 내장 메서드를 제공합니다. 이번 글에서는 Go 언어에서 슬라이싱의 기본적인 사용법과 일반적인 방법을 자세히 소개하겠습니다.
【1. 슬라이스 정의】
슬라이스는 다음과 같이 정의되는 가변 길이 시퀀스입니다.
var arr []type
여기서 유형은 int, string 등과 같은 모든 유형이 될 수 있습니다. make() 메소드를 사용하여 슬라이스를 직접 생성할 수도 있습니다.
arr := make([]type, len, cap)
여기서 len은 슬라이스의 길이를 나타내고 cap은 슬라이스의 용량을 나타냅니다. 여기서 주목해야 할 점은 슬라이스의 용량이 길이보다 크거나 같다는 것입니다.
【2. 슬라이싱의 기본 작업】
2.1 슬라이스 순회
범위 키워드를 사용하여 슬라이스를 순회할 수 있습니다.
arr := []string{"hello", "world", "go"} for index, value := range arr { fmt.Printf("index:%d, value:%s ", index, value) }
출력 결과는 다음과 같습니다.
index:0, value:hello index:1, value:world index:2, value:go
2.2 슬라이스 추가
슬라이스에 추가 요소는 아래와 같이 Append() 메서드를 사용할 수 있습니다.
var arr []string arr = append(arr, "hello")
여기서는append() 메서드를 사용한 후 반환 값을 슬라이스에 다시 할당해야 한다는 점에 유의해야 합니다.
2.3 슬라이스 삭제
슬라이스의 요소를 삭제하려면 아래와 같이 내장된 delete() 메서드를 사용할 수 있습니다.
arr := []string{"hello", "world", "go"} arr = append(arr[:1], arr[2:]...)
여기 구문은 매우 까다로우므로 세 부분으로 나눌 수 있습니다.
최종 결과는 인덱스 1이 있는 "world" 요소를 삭제하는 것입니다.
2.4 슬라이스 수정
슬라이스의 요소를 수정하려면 아래와 같이 첨자를 통해 직접 값을 할당할 수 있습니다.
arr := []string{"hello", "world", "go"} arr[1] = "Golang" fmt.Println(arr)
출력 결과는 다음과 같습니다.
[hello Golang go]
[3. 일반적인 슬라이싱 방법]
여기에 몇 가지를 나열하십시오. 일반적으로 사용되는 슬라이싱 방법:
3.1 len() 방법
len() 방법은 조각의 길이를 얻는 데 사용됩니다. 코드 예제는 다음과 같습니다.
arr := []string{"hello", "world", "go"} fmt.Println(len(arr))
출력 결과는 다음과 같습니다.
3
3.2 cap() 메소드
cap() 메소드 슬라이스의 용량을 얻는 데 사용되는 코드 예는 다음과 같습니다.
arr := make([]string, 3, 5) fmt.Println(cap(arr))
출력 결과는 다음과 같습니다.
5
3.3 copy() 메소드
copy() 메소드는 다음과 같습니다. 한 슬라이스의 값을 다른 슬라이스로 복사합니다. 코드 예는 다음과 같습니다.
var arr1 = []string{"apple", "banana", "orange"} var arr2 = make([]string, 3) copy(arr2, arr1) fmt.Println(arr2)
출력 결과는 다음과 같습니다.
[apple banana orange]
3.4append() 메소드
append() 메소드는 슬라이스에 요소를 추가하는 데 사용됩니다. 예는 다음과 같습니다:
arr := []string{"hello", "world", "go"} arr = append(arr, "Golang") fmt.Println(arr)
출력 결과는 다음과 같습니다:
[hello world go Golang]
3.5append() 메소드 및 확장
슬라이스의 용량이 새 요소를 수용하기에 충분하지 않은 경우,append() 메소드는 자동으로 용량을 확장합니다. 확장 조건은 다음과 같습니다.
3.6append() 메소드의 가변 매개변수
append() 메소드의 입력 매개변수는 가변 매개변수일 수 있으며 여러 요소를 슬라이스에 추가할 수 있습니다. 코드 예는 다음과 같습니다.
arr := []string{"hello", "world", "go"} arr = append(arr, "Golang", "Python") fmt.Println(arr)
출력. 결과는 다음과 같습니다.
[hello world go Golang Python]
[요약]
이 글은 Go 언어에서 슬라이싱의 기본 사용법과 일반적인 방법을 자세히 소개합니다. 모두에게 도움이 되기를 바랍니다. 실제 코드에서는 슬라이싱을 유연하게 사용하면 코드를 더욱 간결하고 효율적으로 만들 수 있습니다.
위 내용은 골랑 슬라이스 방법 Op의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!