Kotlin 與 Java 完全互操作 2021-07-16

Kotlin是基于JVM平臺的靜態(tài)編程語言,同時(shí)在設(shè)計(jì)初就把與Java的互操作性當(dāng)作重要目標(biāo)。正如官網(wǎng)所宣傳的那樣:100% interoperable with Java and Android。下面我們舉個(gè)簡單的例子,來展示Kotlin中使用Java的ArrayList類與使用JUnit測試框架進(jìn)行單元測試。代碼示例如下:

fun getArrayList():List<String> {? // (1)函數(shù)聲明

? ?val arrayList = ArrayList<String>() // (2)Kotlin 中直接調(diào)用Java的API

arrayList.add("A")

arrayList.add("B")

arrayList.add("C")

return arrayList

}

代碼說明如下:

(1):聲明了一個(gè)返回List<String>的函數(shù),我們看到Kotlin中使用fun關(guān)鍵字來聲明函數(shù)。

(2):創(chuàng)建了一個(gè)ArrayList<String> 對象,我們可以看到,在Kotlin中創(chuàng)建對象不再使用new關(guān)鍵字了,尖括號里面的String是泛型信息。該語法與Java語言基本類似。關(guān)于集合類與泛型的相關(guān)內(nèi)容,將在第七章和第八章中具體介紹。

下面使用JUnit框架進(jìn)行單元測試。代碼如下:

@RunWith(JUnit4::class)? ?//? 直接使用Java生態(tài)庫JUnit中的注解@RunWith

class FullJavaInteroperabilityTest{

@Test? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//? ?標(biāo)記這是一個(gè)測試方法

fun test{

val list = getArraylist()? ? ? //? ?調(diào)用被測試函數(shù)

Assert.assertTrue(list.size == 3)? ? //? 斷言

}

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容