[Go] Creating a slice with make

Slices can be created with the built-in make function; this is how you create dynamically sized arrays.

The make function allocates a zeroed array and returns a slice that refers to that array:

a := make([]int, 5)  // len(a)=5

 

 To specify a capacity, pass a third argument to make:

package main

import "fmt"

func main() {
	b := make([]int, 0, 5) // len(b)=0, cap(b)=5

	b = b[:cap(b)] // len(b)=5, cap(b)=5
	fmt.Println(b) // [0 0 0 0 0]
	// A subset of slice start from index 1
	b = b[1:] // len(b)=4, cap(b)=4
	fmt.Println(b) // [0 0 0 0]
}

 

posted @ 2022-09-04 22:50  Zhentiw  阅读(15)  评论(0编辑  收藏  举报