1.4语法糖:组合类型


#21

希望坚持初心,按kotlin官方定位做“务实”的语言,专注jvm。从现实来看,其它领域基本没什么人关注kotlin,而且有type script(js)、go(native服务端)、swift(ios)、c#(windiws)、python(人工智能)等各领域接受度较高的现代语言,kotlin切入比较困难。
另,突然想到java中是有“或”类型的概念,只是没有铺开,在catch时可以这样写:
try{
……
}catch(IOException | NullPointException | IndexOutBoundException ex){
……
}


#22

实际情况是,官方的定位是打造 Kotlin 成为一门工业级语言,务实可以认为是它的目标,但专注 Jvm 并不是。而 js 和 native,国际上的关注度并没有很低,你可以关注下 slack 的 kotlin 频道。

从语言的角度来比较,其实 Jvm 上面 java 的接受度也是很高的对吧,还有 Scala。


#23

与类型 1.0 就已经支持:

fun <T> maxToDouble(t1: T, t2: T) where T: Comparable<T>, T: Number =
    if (t1 < t2) t2.toDouble() else t1.toDouble()

fun main() {
    println(maxToDouble(1, 2))
    println(maxToDouble(1.1, 1.0))
}

#24

不一样,现有kotlin和java都是类型推导到最近公父类,而我希望的A|B是限制在两者之中的,不因此范围扩大


京ICP备16022265号-2 Kotlin China 2017 - 2018
本站由腾讯云提供计算服务