Kotlin:创建扩展函数文件?加
我正在Kotlin开发一些库,我没有找到这个解决方案,
我怎么能解决这个问题, 这是说,创建扩展功能File?.plus ,在Java中它的工作正常,但在Kotlin如何写这个代码?
先谢谢你。
你有三个选择:
1)避免你通过调用toString()
一个带有String
的File
,从而导致两个字符串的连接。
val sdCard = File(Environment.getExternalStorageDirectory().toString() + "/PicTaker/Images")
2)写这个扩展函数并返回一个字符串
private operator fun File?.plus(s: String): String { return this.toString() + s }
3)使用字符串模板
val sdCard = File("${Environment.getExternalStorageDirectory()}/PicTaker/Images")
您不需要创建更多的代码,只需将加号(+)更改为逗号(,)即可。
val sdcard = File(Environment.getExternalStorageDirectory(), "/PicTaker/Images")
添加toString()
:
val sdcard = File(Environment.getExternalStorageDirectory().toString() + "...")
在Kotlin中,我们可以为+运算符重载,而Kotlin编译器认为您正在尝试使用File?
的重载加运算符File?
类型。 并提供一个选项来创建File?
的扩展功能File?