Golang程序 将数组转换为字符串并指定字符的连接元素
在本教程中,我们将编写一个go语言程序,将数组转换为字符串并以指定的字符分隔。数组是一种数据结构,用于在连续的内存位置存储数值。
方法1:使用Join()函数将数组转换为字符串
在这个方法中,我们将编写一个golang程序,使用一个库函数将数组转换为字符串。我们将制作一个单独的函数,它将接受要转换的数组作为参数,并将其转换为字符串,并返回结果。
语法
func Join(s []string, sep string) string
join函数用于将一个数组转换为字符串。这个函数存在于strings包中。它需要两个参数,第一个是我们希望转换的数组,第二个是数组元素在转换为字符串后应该被分开,并返回最后的字符串。
func typeofobject(x interface{})
typeof()函数被用来获取任何变量的类型。这个函数存在于reflect包中,它将需要确定其类型的变量作为参数。然后,该函数返回作为结果的指定变量的类型。
算法
第1步 – 首先,我们需要导入fmt、strings和reflect包。
第2步 – 然后,创建一个将数组转换为字符串的函数。这个函数接受数组作为一个参数,将结果作为字符串返回。
第3步 – 启动main()函数。初始化一个数组并为其赋值,将其与变量的类型一起打印在屏幕上。
第4步 – 现在,通过将数组作为参数传递给函数来调用该函数,并将该函数返回的值存储在一个变量中。
第5步 – 该函数使用join()库函数来进行相应的转换。最后,我们需要使用fmt.Println()函数在屏幕上打印字符串的值和它的类型。
示例
Golang程序使用join()函数将一个数组转换为一个字符串。
package main
import (
"fmt"
"reflect"
"strings"
)
// function to convert an array to string
func arrayToString(arr []string) string {
// seperating string elements with -
return strings.Join([]string(arr), "-")
}
func main() {
// initializing an array
array := make([]string, 0, 3)
array = append(array, "An", "Apple", "A", "Day", "Keeps", "Doctor", "Away")
// printing array
fmt.Println("The given array is:", array)
fmt.Println("Its type is:", reflect.TypeOf(array))
fmt.Println()
result := arrayToString(array)
fmt.Println("The value recieved is:\n", result, "\n Its type is:", reflect.TypeOf(result))
}
输出
The given array is: [An Apple A Day Keeps Doctor Away]
Its type is: []string
The value recieved is:
An-Apple-A-Day-Keeps-Doctor-Away
Its type is: string
方法2:通过使用Sprint()函数将数组转换为字符串
在这个方法中,我们将写一个go语言程序,通过使用sprint()函数将一个数组转换为一个字符串。
语法
func Sprint(format string, a ...interface{}) string
该函数返回一个格式化的字符串。它接受一些字符串格式的参数。第一个参数应该是一个字符串格式,后面是一个可变数量的参数。
func Split(str, sep string) []string
Split()函数用于通过提供的分隔符来分割一个字符串。这个函数存在于strings包中,它接受要分割的字符串和分隔符作为一个参数。然后,该函数返回最终的字符串数组作为结果。
func Join(s []string, sep string) string
join函数用于将一个数组转换为字符串。这个函数存在于strings包中。它需要两个参数,第一个是我们希望转换的数组,第二个是数组元素转换为字符串后应该分开的分隔,并返回最后的字符串。
算法
第1步 – 首先,我们需要导入fmt、strings和reflect包。
第2步 – 然后,创建一个将数组转换为字符串的函数。这个函数接受数组作为一个参数,将结果作为字符串返回。
第3步 – 启动main()函数。初始化一个数组并为其赋值,将其与变量的类型一起打印在屏幕上。
第4步 – 现在,通过将数组作为参数传递给函数来调用该函数,并将该函数返回的值存储在一个变量中。
第5步 – 该函数使用sprint()库函数将数组转换为字符串,并使用split函数通过指定的字符来分割字符串变量。
第6步 – 最后,我们需要使用fmt.Println()函数在屏幕上打印字符串的值和它的类型。
示例
Golang程序通过使用sprint()函数将数组转换为字符串。
package main
import (
"fmt"
"reflect"
"strings"
)
// function to convert an array to string
func arrayToString(arr []string) string {
// seperating string elements with -
string := fmt.Sprint(arr)
res := strings.Split(string, "-")
return strings.Join(res, " ")
}
func main() {
array := []string{"Hello", "world", "!"}
fmt.Println("The given array is:", array)
fmt.Println("Its type is:", reflect.TypeOf(array))
fmt.Println()
result := arrayToString(array)
fmt.Println("The value recieved is:\n", result, "\n Its type is:", reflect.TypeOf(result))
}
输出
The given array is: [Hello world !]
Its type is: []string
The value recieved is:
[Hello world !]
Its type is: string
结论
我们已经成功地编译并执行了一个go语言程序,将一个数组转换为一个字符串,并将字符串中的元素用一个指定的字符连接起来。在这个案例中,我们使用了两个程序。在第一个程序中,我们使用了strings包中的join()函数,在第二个程序中,我们使用了go语言的sprint()函数来进行相应的转换。