美文网首页Kotlin入门
Kotlin基本语法

Kotlin基本语法

作者: Android派 | 来源:发表于2018-04-04 17:21 被阅读0次

    定义函数

    定义一个函数,int a , int b, return a+b

    fun sum(a:Int , b:Int):Int{
        return a+b
     } 
    

    该函数只有一个表达式函数体以及一个自推导性的返回值

    fun sum(a:Int , b:Int) = a+b
    

    返回一个void的类型,Unit可省略

    fun doSomething():Unit{
    }
    fun doSomething(){
    }
    

    定义变量

    定义一个变量

    val a: Int = 333    //立即初始化
    val b = 333    //推导出Int
    val c: Int    //未初始化的变量必须定义类型
    c = 333    //赋值
    

    注释

    //单行注释
    /*这是
    块注释*/
    

    字符串模板

    var a = 333
    var a1 = "a is $a"    //使用变量名作为模板
    var a2 = "${a1.replace("is","was")}"    //使用表达式作为模板
    

    使用可空变量以及空值检查

    fun parseInt(str : String): Int?{
        return str.toIntOrNull()
    }
    
    fun multiply(str1 : String , str2 : String):Int{
        val x = parseInt(str1)
        val y = parseInt(str2)
        //直接使用x,y会产生错误,因为可能会有空值
        if(x != null && y != null){
            //x,y在进行了值检测之后自动转化成非空值
            return x*y
        }
    }
    

    使用值检查并自动转换

    is 操作符检查一个表达式是否是某个类型的实例

    fun getStringLength(obj : Any): Int? {
        if(obj is String){
            //此时obj 自动转化成Sring类型
            return obj.length
        }
        return 0
    }
    

    for循环

    val items = listOf{"apple","pears","banana"}
    for (item in items) {
    }
    for (index in items.indices){
       //取值items[index]
    }
    

    while循环

    val items = listOf{"apple","pears","banana"}
    val index = 0
    while (index < items.size){
       index++
    }
    

    使用when表达式

    fun getString(obj : Any) : String = 
        when(obj){
            0 -> "zero"
            "1" -> "yi"
            false -> "false"
            is Long -> "is Long"
            !is Boolean -> "is not boolean"
            else -> "unKnow"
        }
    

    ranges

    in在某个范围内 !in不在耨个范围内

    val a=19
    if(a in 1..100){
        print("true")  
    }
    

    使用lambda表达式

    val fruits = listOf("apple","wiki","banana","avocado")
        fruits
         .filter{ it.length>4 }
         .sortedBy{ it }
         .map{ it.toUpperCase() }
         .forEach{ printIn ( it ) }
    

    相关文章

      网友评论

        本文标题:Kotlin基本语法

        本文链接:https://www.haomeiwen.com/subject/umstcftx.html