kotlin-Android开发依赖库

kotlin-stdlib 与 kotlin-stdlib-jdk7

在学习过程中发现引用kotlin依赖版本有kotlin-stdlib、kotlin-stdlib-jdk7

那么他们到底有什么区别呢?

1.第一步,百度搜索、谷歌搜索

没有搜到。。。

2.第二部,kotlin官网搜索

发现一句话

If you're targeting JDK 7 or JDK 8, you can use extended versions of the Kotlin standard library. They contain additional extension functions for APIs added in new JDK versions. Instead of kotlin-stdlib, use kotlin-stdlib-jdk7 or kotlin-stdlib-jdk8, depending on your JDK version.

翻译:

如果您的目标是 JDK 7 或 JDK 8,则可以使用 Kotlin 标准库的扩展版本。它们包含新 JDK 版本中添加的 API 的附加扩展功能。根据您的 JDK 版本,使用 kotlin-stdlib-jdk7 或 kotlin-stdlib-jdk8 代替 kotlin-stdlib
 这时看到还有一个jdk8版本,通过上面能了解到kotlin-stdlib是默认版本。jdk7或jdk8是对使用的对应jdk版本的一个扩展。

但是他们到底有什么区别呢?

3、第三步,看源码

(1)引用kotlin-stdlib

 kotlin-stdlib-jdk7

 kotlin-stdlib-jdk8

 查看多出来的包下边代码

此时明显能看出来,jdk7里面多出来的是有关jdk7的扩展代码。jdk8对应的是jdk7和jdk8部分的扩展代码。

4.第四步、寻找如何使用。

没研究出来。。。有小伙伴知道的告诉我一下,jdk8里的代码有一个类

PlatformThreadLocalRandom        不知道 为什么无法引用。
继续搜索,找到一篇文章介绍比较详细,大家可以参考

https://mbonnin.medium.com/the-different-kotlin-stdlibs-explained-83d7c6bf293

    //Core KTX 模块为属于 Android 框架的通用库提供扩展程序。
    implementation 'androidx.core:core-ktx:1.8.0'


     //旧版jre,新版使用jdk
    //implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.0"
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.0"
    
    //协程依赖:coroutines-core协程核心,coroutines-android协程Android
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1'
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1'
    
    //kotlin反射
    implementation "org.jetbrains.kotlin:kotlin-reflect:1.7.0"

    implementation 'javax.activation:activation:1.1.1'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值