📌  相关文章
📜  如何在 Golang 中获取切片的第一个和最后一个元素?

📅  最后修改于: 2021-10-24 13:12:37             🧑  作者: Mango

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