Golang 从数组中获取给定数量的项

Golang 从数组中获取给定数量的项

在本教程中,我们将编写一个Go语言程序,以获取数组中给定数量的前几个项。我们可以通过使用Go语言的内建函数或使用for循环来实现此目的。第一个方法在功能上比第二个方法更高效,但我们将在本程序中讨论这两种方法。

方法1:使用内部函数从整数数组中获取项

在此方法中,我们将编写一个Go语言程序,通过使用append()库函数来获取数组中给定数量的前几个项。

语法

func make ([] type, size, capacity)

make 函数是Go语言中用于创建数组/映射的函数,它接受要创建的变量的类型、大小和容量作为参数。

func append(slice, element_1, element_2…, element_N) []T

append函数用于向数组切片添加值。它需要多个参数。第一个参数是要添加值的数组,接着是要添加的值。然后函数返回包含所有值的最终数组切片。

步骤

步骤1 − 首先,我们需要导入fmt包。

步骤2 − 然后,创建一个函数来获取给定索引的元素。这个函数接受数组作为参数并返回最终数组。

步骤3 − 现在,我们需要开始main()函数。

步骤4 − 在这里,使用make()函数初始化一个整数数组,并将值添加到数组中。然后在屏幕上打印数组。

步骤5 − 在要存储元素之前,将索引存储在一个变量中。将该索引处的元素存储在一个变量中。

步骤6 − 现在,通过将数组和索引作为参数传递给delFirstElem()函数来调用该函数,并存储获取的数组。

步骤7 − 在屏幕上打印最终数组。

示例

使用内部函数从整数数组中获取指定数量的第一个元素的Golang程序。

package main
import "fmt"

// function to get the first element from the array
func getFirstElem(array []int, index int) []int {
   return append(array[:index])
}
func main() {

   // initializing an array
   array := make([]int, 0, 5)
   array = append(array, 1, 2, 3, 4, 5)
   fmt.Println("The given array is:", array)
   var index int = 2
   elem := array[index]
   result := getFirstElem(array, index)
   fmt.Println()
   fmt.Println("The provided index is:", index)
   fmt.Println("Array obtained before the element", elem, "is:\n", result)
}

输出

The given array is: [1 2 3 4 5]

The provided index is: 2
Array obtained before the element 3 is:
 [1 2]

方法2:使用用户定义的函数从数组中获取元素

在这个示例中,我们将编写一个 Go 语言程序,在程序的 main() 部分中获取数组中给定的第一个元素。

步骤

步骤1 - 首先,我们需要导入 fmt 包。

步骤2 - 现在,我们需要启动 main() 函数。

步骤3 - 在这里,使用 make() 函数初始化一个整数数组,并将值附加到数组中。然后使用 fmt.Println() 函数在屏幕上打印数组。

步骤4 - 在将元素存储在提供的索引之前,将索引存储在一个变量中。

步骤5 - 现在,使用 : 运算符重新切片数组,并将提供的索引之前的值存储在一个变量中。

步骤6 - 进一步,在屏幕上打印最终数组。

示例

使用用户定义的函数从数组中获取给定的第一个元素。

package main
import "fmt"
func main() {

   // initializing an array
   array := make([]int, 0, 5)
   array = append(array, 11, 20, 13, 44, 56)
   fmt.Println("The given array is:", array)
   var index int = 3
   elem := array[index]
   result := array[:index]
   fmt.Println()
   fmt.Println("The provided index is:", index)
   fmt.Println("Array obtained after getting values before", elem, "is:\n", result)
}

输出

The given array is: [11 20 13 44 56]

The provided index is: 3
Array obtained after getting values before 44 is:
 [11 20 13]

方法3:使用append()函数从整数数组中获取项

在这种方法中,我们将使用循环来从Go编程语言的数组的开头获取特定索引之前的值。

步骤

步骤1 − 首先,我们需要导入fmt包。

步骤2 − 现在,我们需要开始main()函数。

步骤3 − 在这里,使用make()函数初始化一个整数数组,并向数组添加值。然后,在屏幕上打印数组。

步骤4 − 将索引和该索引处的值存储在一个变量中,在该索引之前的元素应该被打印。

步骤5 − 现在,使用for循环迭代数组,并在新数组中存储提供的索引之前的位置的元素。

步骤6 − 然后,在屏幕上打印最终数组。

示例

使用append()函数从整数数组中获取给定数量的项的Golang程序。

package main
import "fmt"
func main() {
   array := make([]int, 0, 8)
   var result []int
   array = append(array, 11, 20, 13, 44, 56, 96, 54, 97)
   fmt.Println("The given array is:", array)

   // getting the index
   var index int = 3

   // re-slicing the array
   for i := 0; i < len(array); i++ {
      if i < index {
         result = append(result, array[i])
      }
   }
   elem := array[index]
   fmt.Println()
   fmt.Println("The provided index is:", index)
   fmt.Println("Array obtained after getting elements before", elem, "is:\n", result)
}

输出

The given array is: [11 20 13 44 56 96 54 97]

The provided index is: 3
Array obtained after getting elements before 44 is:
 [11 20 13]

结论

我们成功地编译和执行了一个Go语言程序,可以获得数组中给定数目的首个项目,并提供了示例。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程