【IT168 编译】如果要说谁是这段时间话题性最高的语言,那么一定非Kotlin莫属。成功上位,被谷歌官宣成为Android正式编程语言,TIOBE一路高歌猛进位列43,与Java的互操作性,也让程序员对它好感倍增......这么红的Kotlin,你真的了解吗?下面我们就通过几个小问答来测试一下!
▲
1.Kotlin的创造者是谁?
a)Google
b)JetBrains
c)Oracle
d)Microsoft
2.下面哪个是Kotlin的开源许可?
a)MIT许可证(MIT)
b)GNU通用公共许可证(GPL)
c)Apache许可证2.0(Apache 2.0)
d)FreeBSD许可证(BSD-2条款)
3.Kotlin是否只适用于Java?
a)是
b)否
4.Kotlin是否向后兼容?
a)是
b)否
5.Kotlin是否支持宏?
a)是
b)否
6.以下哪一个用于处理Kotlin中的空异常?
a) Range
b) Sealed Class
c) Elvis Operator
d) Lambda function
7. Kotlin类的默认类型是什么?
a) public
b) sealed
c) final
d) abstract
8.下列关于Kotlin变量,哪一个说法是正确的?
a)val相当于Java中的final变量;
b)var不能更改。
c)val可以改变。
d)默认情况下,所有变量都是不可变的。
答案:
1. b),Kotlin由JetBrains创建,JetBrains是以为专业人员创建开发工具而闻名的公司。
2. c),JetBrains在Apache 2许可证下,开放了以下项目的快照和源代码:
·Kompiler:Kotlin编译器
·基础Java增强库:针对JDK collections和其他框架的实用程序
·构建工具:集成Ant和Maven
·IntelliJ IDEA插件:Kotlin本地IDE
3. b)否,除了Java之外,Kotlin已经扩展到了JavaScript。它们目前在本地工作,不使用任何虚拟机就直接编译到本机代码。
4. a)是,兼容性只有在Kotlin的主要版本中才会存在,如果当前版本是1.1.4,那么在1.7版本开始不兼容,1.8版本中出现错误,然后在2.0以上的版本中被彻底弃用。
5. b)否,因为包含宏的代码很难被优化和测试,所以Kotlin开发人员放弃了。
6. c),您可以在Kotlin中使用Elvis操作符(?:)来表示“if对象不为Null,使用该值,否则就使用非空值。“
7. c),默认情况下,Kotlin的所有类都是final。
8. a),val和var都用于在Kotlin中创建变量。但是,val变量不可变,即一旦初始化,就不能更改其值。这对应于Java中的final变量。
测试结果:
对照了上面的答案,你的测试情况怎么样呢?我们暂且根据正确答题的数量划分了几个等级,供大家参考:
0-3道题:Kotlin的初学者,还需要多多参考Kotlin综合教程,更多学习。
4-5道题:对于Kotlin知识的学习比较稳定,但是还要更多的关注细节。
6-7道题:你对Kotlin的知识已经基本完全掌握!
8道题:好吧,相信你对Kotlin已经无所不知了!