Kotlin的学习(变量 函数 逻辑控制)
一、变量
1、变量声明前都要用val或var来声明。val表示不可以被修改的数据,var表示可以被修改的数据。
例如:val a=10 或 var b:Int=20(Kotlin可以自己识别数据类型,可以不用显式的表示,有时不能自己识别,则需要进行标注)。
val name:String ="dzx"
val a:Int=37
二、函数
1、首先,定义函数的关键字----fun。无论定义什么函数都要用fun来声明。
2、fun后面是函数名。最好有一定的意义,能表明这个函数的功能是什么。
3、函数名后面是一对括号,里面声明该函数接收的参数类型和数量。不接收则放空括号。
4、括号后面用于声明该函数返回值的类型。不返回数据则不写。
例如:
fun Largernumber(num1:Int,num2:Int):Int{
return max(num1,num2)
}
5、当函数体中只有一行代码时,可以将唯一的一行代码写在函数定义的尾部,用等号连接
fun Largernumber(num1:Int,num2:Int)=max(num1,num2)
三、程序的逻辑控制
1、if条件语句
if条件语句可以有返回值,返回值就是if语句每一个条件中最后一行代码的返回值。
2、when语句
when语句类似于Java中的switch语句。when语句允许传入一个任意类型的参数,然后在when的结构体中定义一系列的条件。
fun main(){
val name:String ="dzx"
println("score="+ Score("dzx"))
}
fun Score(name:String)=when(name){
"Tom"->86
"dzx"->100
"kxy"->100
else->0
}
除了精确匹配之外,when语句还允许进行类型匹配,例如:
fun checknumber(a:Number){
when(a){
is Int-> println("a is Int")
is Double-> println("a is Double")
else -> println("not support")
}
注:Number类型的参数是kotlin内置的一个抽象类,Int,Double,Long,Float等与数字相关的类都是他的子类。
判断字符串或对象是否相等可以直接使用==关键字。
3、循环语句
for-in循环
- val num=0…10
表示0到10的区间,包括0和10。…是创建两端闭区间的关键字。- val num=0 until 10
表示0到10的区间,包括0,不包括10。until是创建左闭右开区间的关键字。- 10 downTo 1
表示从10到1的降序区间,闭包。
- 10 downTo 1
- val num=0 until 10
另外,使用step关键字可以跳过区间中的一些元素。例如:
fun main(){
for (i in 0 until 10 step 2)
println(i)
}
表示在遍历0-10这个区间的时候,每次循环都会在区间范围内增加2,相当于for-i循环中的i=i+2。