切片不需要指定长度
案例1
package main
import "fmt"
func main() {
var mySlice[] int = []int{1,2,3}
fmt.Println(mySlice)
// 切片加入新元素
mySlice = append(mySlice,99)
fmt.Println(mySlice)
}
简化编写
package main
import "fmt"
func main() {
var mySlice = []int{1,2,3}
fmt.Println(mySlice)
// 切片加入新元素
mySlice = append(mySlice,99)
fmt.Println(mySlice)
}
案例2
使用make函数
package main
import "fmt"
func main() {
mySlice := make([]int,3)
fmt.Println(mySlice)
mySlice[0] = 2
mySlice[1] = 55
mySlice[2] = 32
fmt.Println(mySlice)
mySlice = append(mySlice,99,89)
fmt.Println(mySlice)
}
可以简写
案例3
package main
import "fmt"
func main() {
mySlice := make([]int,3)
fmt.Println(mySlice)
changeSlice(mySlice)
fmt.Println(mySlice)
}
func changeSlice(slice []int) {
for index := range slice {
slice[index] = 4
}
}
切片充当参数和数组充当参数显然不一样的。