JVM程序语言Kotlin发布最新1.8.0版本,这个新版本加入实验性目录递归复制、删除功能,也强化了时间戳功能,还进一步提升调用typeOf时的性能。
Kotlin 1.8.0新加入函数copyToRecursively和deleteRecursively,前者让开发者可以递归复制目录以及之中的内容到目的地,后者则是递归删除目录和内容,官方提到,这项功能将在备份作业中非常实用。
目录复制函数供开发者定义复制文件异常的例外处理,当复制作业的目的地已经存在欲复制的文件,此时便会出现异常,开发者可以设置在例外发生时进行强制复写。如果在删除文件时遭遇例外,则该文件便会被跳过直到删除工作完成,并在之后丢出例外资讯。
Kotlin 1.8.0标准函数库添加可比较的时间戳TimeMarks,让时间计算更方便。过去当开发者想要计算TimeMarks与现在的时间差,一次只能在一个TimeMarks上调用elapsedNow,由于两个elapsedNow无法同时调用,也使得时间比较变得困难。
而在Kotlin 1.8.0中已经可以方便比较TimeMarks,开发者能够创建新的TimeMarks实例,并且减去其他TimeMarks,官方表示,这项功能将能够用于动画开发,简单计算和比较不同影格多个时间标记之间的差。
在Kotlin 1.7.0添加的Optionals扩展函数现在已经稳定,开发者可更简单地处理在Java中,使用Optional类别处理的工作,执行像是在JVM上展开或是转换Optional对象等任务。官方也将Kotlin内部缓存机制更改为Java的ClassValue,过去系统仅会缓存KClass,现在还多缓存了KType和KDeclarationContainer,而这将会明显提升调用typeOf时的性能。
领取专属 10元无门槛券
私享最新 技术干货