55 lines
1.4 KiB
Go
55 lines
1.4 KiB
Go
package main
|
||
|
||
import "fmt"
|
||
|
||
func main() {
|
||
slice1 := []int{1, 2, 3}
|
||
|
||
fmt.Printf("len = %d, slice = %v\n", len(slice1), slice1)
|
||
|
||
var slice2 []int
|
||
fmt.Printf("len = %d, slice = %v\n", len(slice2), slice2)
|
||
|
||
var slice3 []int
|
||
slice3 = make([]int, 3)
|
||
slice3[0] = 100
|
||
fmt.Printf("len = %d, slice = %v\n", len(slice3), slice3)
|
||
|
||
var slice4 []int = make([]int, 3)
|
||
fmt.Printf("len = %d, slice = %v\n", len(slice4), slice4)
|
||
|
||
slice5 := make([]int, 3)
|
||
fmt.Printf("len = %d, slice = %v\n", len(slice5), slice5)
|
||
|
||
var slice6 []int
|
||
if slice6 == nil {
|
||
fmt.Println("slice6为空")
|
||
} else {
|
||
fmt.Println("slice长度为", len(slice6))
|
||
}
|
||
|
||
// 长度与容量
|
||
var numbers = make([]int, 3, 5)
|
||
fmt.Printf("len = %d, cap = %d, slice = %v\n", len(numbers), cap(numbers), numbers)
|
||
// 追加一个元素1(len(numbers) = 4)
|
||
numbers = append(numbers, 1)
|
||
fmt.Printf("len = %d, cap = %d, slice = %v\n", len(numbers), cap(numbers), numbers)
|
||
numbers = append(numbers, 2)
|
||
fmt.Printf("len = %d, cap = %d, slice = %v\n", len(numbers), cap(numbers), numbers)
|
||
numbers = append(numbers, 3)
|
||
fmt.Printf("len = %d, cap = %d, slice = %v\n", len(numbers), cap(numbers), numbers)
|
||
|
||
var numbers2 = make([]int, 3)
|
||
fmt.Printf("len = %d, cap = %d, slice = %v\n", len(numbers2), cap(numbers2), numbers2)
|
||
|
||
// 截取
|
||
s := []int{1, 2, 3}
|
||
s1 := s[0:2]
|
||
s2 := make([]int, 3)
|
||
copy(s2, s)
|
||
s[1] = 200
|
||
fmt.Println(s1)
|
||
fmt.Println(s)
|
||
fmt.Println(s2)
|
||
}
|