Golang 使用内置函数来反转数组的元素

Golang 使用内置函数来反转数组的元素

在本教程中,我们将编写一个Go语言程序,使用内置函数来反转数组的元素。在这个程序中,我们将看到如何使用内部的Go函数来反转字符串和整数的数组。

方法1:使用Append()和Make()函数

语法

func make ([] type, size, capacity)

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

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

append函数用于将值添加到数组切片中。它接受多个参数。第一个参数是要添加值的数组,其后是要添加的值。该函数然后返回包含所有值的最终切片数组。

步骤

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

步骤2 - 现在,开始main()函数。在此函数中,使用make()函数创建一个整数数组,并使用append()函数将值输入到其中。

步骤3 - 使用fmt.Println()函数将数组打印到屏幕上。现在,创建一个空整数数组来存储反转后的数组。

步骤4 - 使用for循环遍历数组的每个元素,并使用append函数将数组中的元素以相反的顺序存储到空数组中。

步骤5 - 一旦整个数组被遍历并且元素按照其各自的位置存储,就将最终数组打印到屏幕上。

示例1

在此示例中,我们将编写一个Go程序,使用append()函数反转整数数组的元素。

package main
import "fmt"
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 rev []int
   for _, n := range array {
      rev = append([]int{n}, rev...)
   }
   fmt.Println("The new array formed after reversing the above array is:", rev)
}

输出

The given array is: [1 2 3 4 5]
The new array formed after reversing the above array is: [5 4 3 2 1]

示例2

在这个示例中,我们将编写一个golang程序,使用append()函数来颠倒字符串数组的元素。

package main
import "fmt"
func main() {

   // initializing an array
   array := make([]string, 0, 5)
   array = append(array, "x", "y", "z", "a", "b")
   fmt.Println("The given array is:", array)
   var rev []string
   for _, n := range array {
      rev = append([]string{n}, rev...)
   }
   fmt.Println("The new array formed after reversing the above array is:", rev)
}

输出

The given array is: [x y z a b]
The new array formed after reversing the above array is: [b a z y x]

方法2:使用Append()和Slice()函数

在这种方法中,我们将编写一个 Go 语言程序,使用 sort 包中的 Slice() 函数来反转整数数组的元素。

语法

func make ([] type, size, capacity)

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

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

append函数用于将值添加到数组片段中。它接受多个参数。第一个参数是我们希望添加值的数组,其后是要添加的值。然后该函数返回包含所有值的最终数组片段。

func Slice(x any, less func(i, j int) bool)

Slice()函数存在于sort包中,用于按任何方式对数组的一个片段进行排序。此函数接受两个参数,一个是要排序的数组,另一个参数是一个函数,该函数指定给定片段的排序顺序。然后该函数返回一个布尔变量作为结果。

步骤

第一步 - 首先,我们需要导入fmt包。

第二步 - 现在,开始main()函数。在此函数中,使用make()函数创建一个整数数组,并使用append()函数向其输入值。

第三步 - 使用fmt.Println()函数在屏幕上打印数组。现在创建一个新的空整数数组来存储反转后的数组。

第四步 - 使用for循环遍历数组的每个元素,并使用append函数将元素按照反向顺序存储到空数组中。

第五步 - 一旦整个数组被遍历并且元素被存储在各自的位置上,就在屏幕上打印最终的数组。

示例

使用slice函数反转数组元素的Golang程序示例

package main
import (
   "fmt"
   "sort"
)
func main() {

   // initializing an array
   array := make([]int, 0, 5)
   array = append(array, 12, 21, 34, 45, 50)
   fmt.Println("The given array is:", array)
   sort.Slice(array, func(i, j int) bool {
      return true
   })
   fmt.Println("The new array formed after reversing the above array is:", array)
}

输出

The given array is: [12 21 34 45 50]
The new array formed after reversing the above array is: [50 45 34 21 12]

结论

我们已经成功编译和执行了一个Go语言程序以反转数组的所有元素,并提供了示例。在第一个示例中,我们使用了各种内部函数来实现这个结果。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程