zoukankan      html  css  js  c++  java
  • 再见kotlin----01语句控制

    零、前言

    玩java也有一段时间了,个人还是非常喜欢java的。
    对Kotion也有层有耳闻,以前也接触过写语法,写起来感觉有点像js,和python,又有种食之无味,弃之可惜的感觉,最后还是搁下了。
    久了不用也忘得差不多了,现在重拾一下,写些笔记记录一下。


    语句控制应该是语法比较重要的一环,几乎是个程序都免不了使用,所以就从语句控制开始说起吧
    在此之前先说一下kotlin最基本的定义语法。

    一、语法的定义

    1.变量定义

    kotlin是弱类型语言,var定义可变变量

    var sum = 0
    sum=2
    

    val定义常量

    val a = 10
    a=20//ERROR
    
    2.kotlin语法之----函数定义
    fun 函数名(变量1:变量类型|n+):返回值类型{
        函数体
        return 
    }
    
    如:
    fun findMax(a: Int, b: Int): Int {
        return if (a >= b) a else b
    }
    

    二、语句控制

    1.if语句----自身可以作为返回值
    /**
     * if语句测试:寻找a,b的最大值
     */
    fun findMax(a: Int, b: Int): Int {
        return if (a >= b) a else b
    }
    
    println(findMax(20, 10))//20
    
    2.for循环语句----的姿势
    /**
     * for语句测试:
     */
    fun sumFrom(startNum: Int, endNum: Int): Int {
        var sum = 0
        for (i in startNum..endNum) {
            sum += i
        }
        return sum;
    }
    
    println(sumFrom(8, 10))//8+9+10=27
    
    3.when分支语句----的姿势--switch的替代者
    /**
     * when语句测试:根据字母判断成绩
     */
    fun getScore(score: String): String {
        return when (score) {
            "A" -> "优秀"
            "B" -> "良好"
            "C" -> "中"
            "D" -> "及格"
            else -> "不及格"
        }
    }
    
    println(getScore("B"))//良好
    
    4.when+in:..范围,前后都包含
    /**
     * when+in语句测试:根据字母判断成绩
     */
    fun parseScore(score: Float): String {
        return when (score) {
            in 90..100 -> "A"
            in 80..89 -> "B"
            in 70..79 -> "C"
            in 60..69 -> "D"
            else -> "不及格"
        }
    }
    
     println(parseScore(85.5f))//B
    
    5.while循环语句
    /**
     * while语句测试:根据字母判断成绩
     */
    fun printUntil(end: Int) {
        var count = end
        while (count > 0) {
            print("${count} ")
            count--
        }
    }
    
    printUntil(5)//5 4 3 2 1
    
    6.when+is语句测试
    /**
     * when+is语句测试:根据字母判断成绩
     */
    fun judgeType(o: Any) {
        when (o) {
            is String -> println("传入了String")
            is Int -> println("传入了Int")
            is Float -> println("传入了Float")
            is Double -> println("传入了Double")
            else-> println("无法判断")
        }
    }
    
        judgeType("toly")//传入了String
        judgeType(1)//传入了Int
        judgeType(1.0)//传入了Double
        judgeType(1.0f)//传入了Float
    

    后记、

    1.声明:

    1----本文由张风捷特烈原创,转载请注明
    2----欢迎广大编程爱好者共同交流
    3---个人能力有限,如有不正之处欢迎大家批评指证,必定虚心改正
    4----你的喜欢与支持将是我最大的动力

    2.连接传送门:

    更多安卓技术欢迎访问:安卓技术栈
    我的github地址:欢迎star
    张风捷特烈个人网站,编程笔记请访问:http://www.toly1994.com

    3.联系我

    QQ:1981462002
    邮箱:1981462002@qq.com
    微信:zdl1994328

  • 相关阅读:
    网络密钥交换协议——Diffie-Hellman
    【剑指Offer】俯视50题之1-10题
    分治
    《Java程序猿面试笔试宝典》之Java程序初始化的顺序是如何的
    China Final J
    MVC入门
    1,单例模式
    运行耗时统计
    普通方法调用,Invoke,begininvoke三者的区别总结及异步与同步的区别总结
    几种查询方法(lambda Linq Enumerable静态类方式)
  • 原文地址:https://www.cnblogs.com/toly-top/p/9781863.html
Copyright © 2011-2022 走看看