Kotlin學習筆記(一)

kotlin類型安全

fun getName():String?{        //String可空類型
    return null
}

fun main(args:Array<String>){
    var name = getName()?:return        //返回null則return
    println(name.length)            //智能類型推斷,所以不用?.
}

var value:String? = "hello"        //確定可空類型有值
print(value!!.length)        //強制拆箱

kotlin常用操作符

  • Elvis操作符 ?:
    如果?:左邊表達式非空,elvis返回左邊結果,否則返回右邊結果
        val a = b?.length?:-1
        ==> val a:Int = if(b!=null) return b.length else -1
    
  • 安全轉換as?
    使用as轉型時,可能會報出ClassCastExceptions,使用as?安全轉型,
    轉型不成功會返回null.
    person: Person = Child()
    if (person is Child) {        //person是Child的實例
        println(person.name)
    }
    
    val parent: Person = Person()
    val child: Child? = parent as? Child        //轉型失敗,不拋異常,返回null值
    println(child)
    
  • 類型判斷符 is
    檢查某個實例是某一個類型,如果判斷屬於某一個類型,判斷後的分支可直接當該類型使用,無需顯示轉換
    person: Person = Child()
    if (person is Child) {        //person是Child的實例
        println(person.name)
    }
  • 範圍操作符..以及in
    if(i in 1..10){        ==> 1 <= i && i <= 10
        println(i)
    }

    for(i in 4 downTo 1){        // downTo倒敘
        println(i)        ==> 4,3,2,1
    }

    for(i in 1..4 setp 2){        //setp疊加係數
        println(i)        ==>1,3
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 34,840评论 18 399
  • 前言 什么是CSS预处理器 定义:CSS预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为CSS增...
    SA_Arthur阅读 3,219评论 0 18
  • 为何叫做 shell ? shell prompt(PS1) 与 Carriage Return(CR) 的关系?...
    Zero___阅读 3,343评论 3 49
  • 《Kotin 编程思想·实战》 《Kotlin极简教程》正式上架: 点击这里 > 去京东商城购买阅读 点击这里 >...
    光剑书架上的书阅读 2,401评论 1 4
  • 近来,你的脸上 总挂着朦胧胧的忧愁, 却一直说,妹妹,我没事 散步吧 我们走到了湖边 黑天鹅在打招呼 而你却哭了 ...
    向日葵爱呀爱太阳阅读 98评论 0 0

友情链接更多精彩内容