Kotlin 语法 (笔记 一)

Kotlin 语法 (笔记 一)

1.基本使用

  • 变量

    • 声明:var 变量, val 常量 只能初始化赋值一次

    • var a = 1 //类型可以不指定
      var a: Int; //初始化未赋值的时候 必须要指定类型
      a = 1;
      
  • 函数

    1.  //a b 参数 Int 返回类型
       fun test(a: Int,b: Int :String): Int{ 
         return a+b;
       }
      
    2. 返回值类型:

      • 明确类型(如果 函数声明为 public 则必须添加返回类型)

      • Unit(无返回值类型,无返回值 默认可以不加) 类似java 中的void关键字

    3. 函数体为表达式

      • �自动判断返回值类型

        fun test(a: Int ,b :Int) = a + b
        
    4. 可变的长参数函数 使用 vararg 关键字

      • fun test(varage v :Int)
        
    5. lambda

      var lambda:(Int ,Int) -> Int = (x,y -> x+y)
      
      var lambda = {x:Int,y:Int -> x+y}
      
    6. null检查机制

       fun nullTest(arg: String?): Int? {
              //类型后面 ? 设置String 可以为空
              var arg1: String? =  null;
              if(arg !=null){
                  Log.d(tag,arg);
              }
              if(arg1 == null){
                  Log.d(tag,"arg1 null");
              }
              var arg2  = null;
              //变量后面!! 会抛异常
              var arg3 = arg2!!.toInt()
              Log.d(tag,arg3.toString());
      
              var arg4  = null;
              //变量后面加?会返回null
              var arg5 = arg4?.toInt();
              Log.d(tag,arg5.toString());
      
              var arg6  = null;
              //返回值后面加 ?: 会返回冒号后面的值
              var arg7 = arg6?.toInt()?: -1
              Log.d(tag,arg7.toString());
              
              //返回可能为空时 返回参数后面也要加?
              return null;
      
          }
      
    7. 类型转换

      • is 关键字, 类似 java instanceof

        区别在 is 会自动做类型转换

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容