Golang程序 从数组中获取第一个给定项目数
在本教程中,我们将编写一个go语言程序,从一个数组中获取第一个给定的项目数。我们可以通过使用go语言中的内置函数或使用for循环来实现这一目的。第一种方法在功能上比第二种方法更有效,但我们将在本程序中讨论这两种方法。
方法1:使用内部函数从一个整数数组中获取项目
在这个方法中,我们将编写一个go语言程序,通过使用append()库函数从一个数组中获取第一个给定数量的项目。
语法
func make ([] type, size, capacity)
Go语言中的 make 函数是用来创建数组/映射的,它接受要创建的变量类型、其大小和容量作为参数。
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()函数从一个整数数组中获取项目
在这个方法中,我们将使用for循环从go编程语言中的数组开始获取特定索引之前的数值。
算法
第1步 - 首先,我们需要导入fmt包。
第2 步 – 现在,我们需要启动main()函数。
第 3 步 – 在这里,使用make()函数初始化一个整数数组,并将数值追加到数组中。此外,在屏幕上打印该数组。
第4 步 – 将索引和该索引的值存储在一个变量中,在该变量之前的元素应该被打印。
第 5 步 – 现在,使用for循环来迭代数组,并将存在于所提供的索引之前的元素存储到新的数组中。
第6 步 – 进一步,在屏幕上打印出最终的数组。
例子
Golang程序使用append()函数从一个整数数组中获得第一个给定数量的项目。
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语言程序,以获得数组中第一个给定的项目数,并附有实例。