Kotlin学习(2)-认识基础语法

  1. 包声明在源文件顶部(同Java)
  2. 定义变量:
  • val:声明后不可改变值
  • var:声明后值可以改变
//每行代码不需要使用分号
val a: Int = 20 //完整样式
val b = 20 //Kotlin可以自动推断出是Int类型
val c: Int  //无初始值,需要添加类型
c = 3  //赋值
  1. 定义函数:
    关键字使用fun
//完整写法
fun sum(a: Int,b: Int): Int{
    return a + b
}

//表达式作为函数体
fun sum(a: Int,b: Int) = a + b

//函数返回无意义的值
fun printSum(a: Int,b: Int):Unit{
    println("sum of $a and $b is ${a + b}")
}

  1. 注释
//行注释

/*
块注释
*/

Kotlin块注释可以嵌套

  1. if/for/while/when
if(a > b){
    //...
}else{
    //...
}

for(item in items){
    //...
}

while(index < items.size){
    //...
    index++
}

when(xxx){
    1 -> "One"
    "Hello" -> "World"
    is Long -> "长整型"
    else -> "error"
}
  1. in运算符,检测某个数字是否在区间内
if(x in 1..y+1){
    //...
}
  1. 可空值及null(空安全)

某个变量的值可以为null的时候,必须在声明的类型后添加"?"标识符,表示该引用可以为空。

fun parseInt(str: String):Int?{
    //...
}
  1. 字符串模板

Kotlin中可以使用字符串模板表达式,它会求值并合并到字符串中。以美元符号"$"开头

val i = 10
val name = steven
println("i = $i")

//使用花括号括起来任意表达式
println("$name.length is ${name.length}")

  1. is运算符,检测表达式是否是某类型的实例
if(obj is String){
    //...
}
  1. Kotlin中DTO
data class Student(val name: String,val sex: String)

Kotlin中无需像Java一样手写get/set方法、toString()、hasCode()、equals()和copy()

  1. 源文件名称

如果Kotlin文件包含单个类(和相关的顶层声明),那么文件名与该类的名称相同,使用.kt扩展名;如果文件包含多个类或只包含顶层声明,选择一个可以描述文件包含内容的名字,以该名命名文件。使用驼峰风格。

你可能感兴趣的:(Kotlin,Android学习中的笔记)