字符串连接

字符串链接,在Java中只能使用+来链接,当然除了StringBuilder、StringBuffer除外。而在Kotlin中除了使用+以外,还可以使用plus()函数。其接受任意类型。plus()函数是一个运算符重载函数。

实例讲解:

val oldStr = "kotlin"
println(oldStr.plus(" very good"))
println(oldStr + " very good")

输出结果为:

kotlin very good
kotlin very good

工作中遇到的问题

  • 最近项目有个这样的需求,添加图片上传,要把多张图片地址以|的方式拼接起来,传给服务器(多张图片以|隔开)

  • 当时看到这个,我想当然的觉得用plus()函数替代Java中的+号就可以了,于是又有下面这段代码

    代码块示例
  • 运行之后的结果,并不是我想的那样,字符串根据没有加进去,开始我以为是plus()方法没执行,但是后来打印发现循环也是进去了的,百思不得其解

    运行结果

  • 查看源码之后,发现问题的所在了,调用plus()方法之后返回的是一个新的对象,之前的imagePath对象并不会发生任何变化

    源码

总结

  • kotlin的用法还是和Java用法有很不同之处,虽然是个很简单,细微的东西,但是用之前还是要看看源码和用法,以免出现我上面那种低级错误,会浪费很多时间
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容