kotlin 记录

记录

fun main(args: Arrary<String>){// 入口 main 方法,变量 args ,String 泛型数组
    args.map({println(it)})
    // lambda 表达式 args.map(){println(it)}/args.map{println(it)} 
    // args.map(::method) lambda 方法表达式中调用 method 方法
} 

main 方法 入口 
fun 方法声明 
var 变量 
val 常量
Arrary<out String> String 类型的数组,out 为 输出 ,因为 String 为 final 所以,out 可省略
没有 new / 对象不用 new 
data class ClassName(){} JavaBean,自动重写了 setter getter toString hashCode 等
map 映射,属于一个扩展方法
没有/可以省略分号
flatmap 迭代的映射,属于一个组迭代的扩展方法
var name :String 变量声明为 String  
? 定义允许为空 
$ 字符串模版
args 
it 迭代器 运行后配置参数 program args --> 编译时反射
Unit void 返回类型,可以省略
.kt kt 语言
enum class ClassName{}// 枚举类 有 class 修饰,与 Java 不同

fun main(varagr arg:String){ //kt 语言 main 方法

}

comparion object {} 
// kotlin 伴生对象 Java 静态方法/静态变量/静态常量
init{} // 主构造方法
fun ClassName.hello(){} 
// ClassName 类的扩展方法 hello ,是原类中没有的,以 类名. 连缀方法名即类的扩展方法
when(this) 类似于 switch(xxx),但是有返回值
尾递归 :只有递,没有归回来  常规会迭代,开占内存, tailrec 编译时进行尾递归优化
递归 :递过去,又归来
坚持原创技术分享,您的支持将鼓励我继续创作!