- 移动开发
- Kotlin和Java语言比较
## tlin 解决了一些 Java 中的问题
Kotlin 通过以下措施修复了 Java 中一系列长期困扰我们的问题
* 空引用由类型系统控制。
* 无原始类型
* Kotlin 中数组是不型变的
* 相对于 Java 的 SAM-转换,Kotlin 有更合适的函数类型
* 没有通配符的使用处型变
* Kotlin 没有受检异常
## Java 有而 Kotlin 没有的东西
* 受检异常
* 不是类的原生类型
* 静态成员
* 非私有化字段
* 通配符类型
## Kotlin 有而 Java 没有的东西
* Lambda 表达式 + 内联函数 = 高性能自定义控制结构
* 扩展函数
* 空安全
* 智能类型转换
* 字符串模板
* 属性
* 主构造函数
* 一等公民的委托
* 变量和属性类型的类型推断
* 单例
* 声明处型变 & 类型投影
* 区间表达式
* 操作符重载
* 伴生对象
* 数据类
* 分离用于只读和可变集合的接口
* 协程