在go语言中,join()是strings包的一个字符串处理函数,可以将数组(切片)转为字符串,即将字符串切片(数组)中存在的所有元素连接为单个字符串;语法“strings.join(s,sep) ”,参数“s”为用来连接元素的字符串切片(数组),参数“sep”是放置在最终字符串中元素之间的分隔符。
本教程操作环境:windows7系统、go 1.18版本、dell g3电脑。
golang中的join方法
golang中的strings.join()函数将字符串切片(数组)中存在的所有元素连接为单个字符串。该函数在字符串包中可用。
func join(s []string, sep string) string
在这里,s是可用来连接元素的字符串切片(数组),sep是放置在最终字符串中元素之间的分隔符。
返回值:它返回一个字符串。
说明:
go中的join()函数跟js中的array.prototype.join方法差不多,都是给数组的每个元素中拼接一个目标字符串,目标字符串为join方法的参数
与js不同的是,js是弱类型的语言,因此可以直接为一个number的数组使用join方法,在执行过程中,js会把number类型的数组隐式的转换为string类型的数组然后进行字符串拼接,而golang是一种强类型静态的语言,在golang中不允许这样做,必须显式的进行类型转换或者直接传入一个字符串数组,否则在编译期就会抛出异常。
strings.join([]int{1,2,3},"+") //error
除此之外,strings.join方法比普通的"str"+"str2"这种形式的字符串拼接效率更高,这是因为string本身就是一个常量,那拼接成一个新字符串,就必须要销毁原string对象,然后使当前引用指向新的字符串对象,这样做的开销是非常大的,而strings.join则不用。
使用示例
示例1:
// golang program to illustrate the // use of strings.join function package main // importing fmt and strings import ( "fmt" "strings") // calling main method func main() { // array of strings. str:= []string{"geeks", "for", "geeks"} // joining the string by separator fmt.println(strings.join(str, "-")) }
输出:
geeks-for-geeks
示例2:
// golang program to illustrate the // use of strings.join function package main // importing fmt and strings import ( "fmt" "strings") // calling main method func main() { // array of strings. str:= []string{"a", "computer-science", "portal", "for", "geeks"} // joining the string by separator in middle. fmt.println(strings.join(str, " ")) }
输出:
a computer-science portal for geeks
【相关推荐:go视频教程、编程教学】
以上就是go语言中join方法有什么用的详细内容。