Go语言切片比数组更强大、灵活、方便,是一种轻量级的数据结构。 Slice 是一个可变长度的序列,它存储相似类型的元素,不允许在同一个切片中存储不同类型的元素。它就像一个具有索引值和长度的数组,但是切片的大小是调整大小的,它们不像数组那样是固定大小的。在内部,切片和数组相互连接,切片是对底层数组的引用。允许在切片中存储重复元素。切片中的第一个索引位置始终为 0,最后一个将是(切片长度 – 1)。
访问第一个元素:它很容易与切片的零索引来访问的第一个元素。
访问最后一个元素:最后一个元素是索引位置处的元素,即Slice的长度减去1 。
例子:
Input :
sliceOfInt[]=[2, 3, 4, 5, 6]
Output :
First element : 2
Last element : 6
Input :
sliceOfFloat[]=[4.5, 3.4, 6.6, 5.2, 2.1]
Output :
First element : 4.5
Last element : 2.1
示例 1:
// Golang program to access the first
// and last element of the slice
package main
import "fmt"
func main() {
// Declaring & Defining
// the Slice
sliceOfInt := []int{2, 3, 4, 5, 6}
// Printing the Slice
fmt.Printf("Slice: %v\n", sliceOfInt)
// Accessing zeroth index
// i.e. first element
first := sliceOfInt[0]
// Printing first element
fmt.Printf("First element: %d\n", first)
// Accessing length(slice)-1
// index i.e. last
// element
last := sliceOfInt[len(sliceOfInt)-1]
// Printing last element
fmt.Printf("Last element: %v\n", last)
}
输出:
Slice: [2 3 4 5 6]
First element: 2
Last element: 6
示例 2:
// Golang program to access the first
// and last element of the slice
package main
import "fmt"
func main() {
sliceOfFloat := []float32{2.5, 3.2, 4.1, 5.7, 6.9}
fmt.Printf("Slice: %v\n", sliceOfFloat)
first := sliceOfFloat[0]
fmt.Printf("First element: %v\n", first)
last := sliceOfFloat[len(sliceOfFloat)-1]
fmt.Printf("Last element: %v\n", last)
}
输出:
Slice: [2.5 3.2 4.1 5.7 6.9]
First element: 2.5
Last element: 6.9