-
[golang] slice 란 무엇인가? 배열과 다른거야?(IT)golang+db팁 한방으로 정리 2023. 3. 8. 09:17
Go 언어에서 slice는 동적 배열(dynamic array)을 나타내는 데이터 타입입니다. slice는 배열과 유사하지만, 크기를 미리 지정하지 않고 요소를 추가, 삭제, 수정할 수 있습니다.
slice는 배열과 같은 형태로 선언하지만, 배열과는 달리 길이를 생략할 수 있습니다. 예를 들어, 다음과 같이 int형 요소를 갖는 slice를 선언할 수 있습니다.
var mySlice []int
slice는 make 함수를 사용하여 동적으로 할당할 수 있습니다. make 함수는 첫 번째 인자로 slice 타입, 두 번째 인자로 slice의 길이, 세 번째 인자로 slice의 용량(capacity)을 입력받습니다. 용량은 slice 내부에서 추가적으로 메모리를 할당하는 데 사용됩니다.
mySlice := make([]int, 5, 10)
위의 코드에서는 길이가 5이고 용량이 10인 int형 slice를 생성합니다. 이후에는 append 함수를 사용하여 slice에 요소를 추가할 수 있습니다.
mySlice := make([]int, 5, 10) mySlice[0] = 1 mySlice[1] = 2 mySlice = append(mySlice, 3)
위의 코드에서는 slice의 첫 번째 요소와 두 번째 요소를 각각 1과 2로 초기화한 후, append 함수를 사용하여 3을 slice에 추가합니다. 이때 slice의 길이가 5에서 6으로 늘어나며, 용량도 자동으로 늘어나게 됩니다.
반응형'(IT)golang+db팁 한방으로 정리' 카테고리의 다른 글
[golang] 함수내 defer func() { } 이 여러개일때 실행 순서는? (1) 2025.07.07 [golang] 형변환 정리 (0) 2023.03.08 [golang] query가 무진장 길때 string 활용 (0) 2023.02.22 [golang] channel 구현시 panic 현상 해결 방법 (0) 2023.01.28 [pgadmin] #Error #servermanager #user_info 대응 (0) 2023.01.18