C/C++教程

【金秋打卡】第10天-C01学习Kotlin-分支表达式

本文主要是介绍【金秋打卡】第10天-C01学习Kotlin-分支表达式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
  • 课程名称:学会Kotlin 突破开发语言瓶颈
  • 章节名称:
    • 第4章:类型初步
      • 4-2分支表达式
  • 讲师姓名:bennyhuo
  • 时间:2022-11-02 23:17

课程内容

  • if…else在Java是语句,而在Kotlin中可以做为表达式使用

  • 三元表达式

    • Java中三元表达式:c = a == 3? 4: 5;
    • Kotlin写法:c = if(a==3) 4 else 5,为if…else表达式
  • switch

    • switch(a) {// Java代码
          case 0: c = 5; break;
          case 1: c = 100; break;
          default: c = 20;
      }
      
    • when(a) {
          0 -> c = 5
          1 -> c = 100
          else -> c = 20
      }
      
    • \\ 上面式子也可写成
      c = when(a) {
          0 -> 5
          1 -> 100
          else -> 20
      }
      
    • \\ 把条件转移到分支
      var x: Any = ...
      when {
          x is String -> c = x.length// x智能转换成String
          x == 1 -> c = 100
          else -> c = 20
      }
      // 也可以写成
      c = when {
          x is String -> x.length// x智能转换成String
          x == 1 -> 100
          else -> 20
      }
      
    • c = when(val input = readLine()) {
          null -> 0
          else -> input.length
      }
      
  • try…catch

    • // Java代码
      try {
          c = a / b;
      } catch(Exception e) {
          e.printStackTrace();
          c = 0;
      }
      
    • // Kotlin代码
      try {
          c = a / b
      } catch(e: Exception) {
          e.printStackTrace()
          c = 0
      }
      
    • // Kotlin代码
      c = try {
          a / b
      } catch(e: Exception) {
          e.printStackTrace()
          0
      }
      

学习心得

好多耳熟能详的语句在Kotlin中全是表达式,有返回值的
扩展方法类型

这篇关于【金秋打卡】第10天-C01学习Kotlin-分支表达式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!