成都创新互联网站制作重庆分公司

go语言中join方法怎么使用

这篇“go语言中join方法怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“go语言中join方法怎么使用”文章吧。

成都创新互联公司专注于苏尼特左企业网站建设,响应式网站设计,商城建设。苏尼特左网站建设公司,为苏尼特左等地区提供建站服务。全流程按需网站策划,专业设计,全程项目跟踪,成都创新互联公司专业和态度为您提供的服务

在go语言中,join()是strings包的一个字符串处理函数,可以将数组(切片)转为字符串,即将字符串切片(数组)中存在的所有元素连接为单个字符串;语法“strings.Join(s,sep) ”,参数“s”为用来连接元素的字符串切片(数组),参数“sep”是放置在最终字符串中元素之间的分隔符。

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语言中join方法怎么使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


网页题目:go语言中join方法怎么使用
URL分享:http://cxhlcq.com/article/jdgeig.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部