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()時的效能。

熱門新聞

Advertisement