Kotlin学习系列

前言:本系列文章将介绍Kotlin的使用,分为11章进行介绍,以《Kotlin实战》为基础,每章一篇博客,将采用模块化的讲解让读者对Kotlin有深入的了解,适用于有Java开发经验的读者,废话少说,下面就开始介绍Kotlin。


第一部分:Kotlin定义和目的


目录

Kotlin学习系列

第一部分:Kotlin定义和目的

 

一、Kotlin概述:

二、Kotlin初体验:

三、Kotlin的主要特征:

四、Kotlin代码编译过程:


一、Kotlin概述:

Kotlin是对Java语言的新编程语言。具有简洁、安全、务实,并且专注于与Java代码的互操作性。他几乎可以用于现在Java使用的任何地方:服务器开发、Android开发等等。

二、Kotlin初体验:

data class Person(var name:String,val age:Int?=null)

fun main(args: Array<String>) {
    val person = listOf<Person>(Person("Alice"),
            Person("Bob",21))
    val oldest = person.maxBy { it.age ?:0 }
    println("The oldest is : $oldest")
}

上面例子声明了一个数据类,其中有两个属性:name、age。其中age的默认值为null。在main方法种创建了一个list,并把person实例装入list中,对一个对象age没有赋予,那就是默认值,第二个age是21,然后调用maxBy函数判断年龄最大值。it为Kotlin的语法糖之一,?:是Elvis运算符,如果it.age==null就会返回0。最后在屏幕上输出最大年龄。

三、Kotlin的主要特征:

  • 目标平台:服务器端、Android以及任何Java运行的地方
  • 静态类型:Kotlin和Java一样都是静态类型的编程语言,这意味着所有表达式的类型在编译器就已经确定了。
  • 类型推断:和Java不一样,你不需要在源代码中指定数据的类型,编译器会自动推断
  • 对可空类型的支持:它能让你的程序更加安全可靠
  • 函数式编程:这种编程风格将使代码尤为简洁更加优雅,避免了大量的重复,后面将重点介绍函数式编程
  • 免费并且开源:Kotlin语言是完全开源的,采用Apache2许可证,开发过程公布在:http://github.com/jetbrains/kotlin

四、Kotlin代码编译过程:

android kotlin 除法 kotlin ??_kotlin

kotlin在编译时最后阶段会产生java字节码,最后通过dx 生成 dex打包进到apk里。在许多时候会使用maven、gradle、ant来编译构建项目。