kotlin萌新入门

1. 基础教程

  1. 变量

    1. 只读变量 val a :Int = 1
    2. 普通变量 var a:Int = 123
    3. 可自动推测类型
    4. 可以接受一个表达式 val name if(you=="tomcat"){"yes"}else{"no"}
  2. 函数返回值

    1. 普通返回fun() :Int{}
    2. 直接返回 fun(a: Int,b:Int)=a+b
    3. 空返回 fun() :Unit{}
      1. 可省略
  3. 函数

    1. 默认值 fun (a:Int = 0)
  4. 字符串模板

    1. 取字符串的电脑$value
    2. 字符串表达式 ${value}
  5. null值

  6. 变量可以为空 Int? 在类型后面添加?问号

  7. 类型检测

  8. obj is Int

  9. for循环

  10. 类似Java的foreach循环

  11. while循环

  12. 条件可以使表达式

  13. when语句

  14. 类似与Java的switch

  15. key值可以是任意类型

  16. demo

    when(obj){
        1 -> "int"
        "name" -> "string"
        is Int -> "is int"
        else -> "default"
    }
    
    //else 类似于Java的default
    
  17. 区间

  18. 判断是否存在于区间里面if (x in 1..10)

  19. 判断是否在区间外 if (x !in 1..10)

  20. 区间迭代 for(x in 1..10)

  21. 区间迭代加步长 for(x in 1..10 step 2)

  22. 区间包含

    1. 包含for(x in 1..100)
    2. 不包含 for(x in 1 until 100)
  23. 集合

    1. 类似Java的foreach语句for(item in items)
  24. lambada表达式过滤filter和映射map

`//假如有集合`

`val animal = listOf("dog","cat","fish")`

1. filter
   1. `animal.filter{it.startsWith("a")}`
2. map
   1. `animal.map{it.toUpperCase()}`
  1. 延迟属性

  2. val p:String by lazy{}

  3. 创建单例

  4. Java中使用private 结合 final ,kotlin中仅仅是使用val即可

  5. 扩展函数

  6. 暂略

  7. if not null

  8. name = "tomcat" if(name?){}

  9. TODO

  10. 不完整代码

2.编码规范

  1. 源文件名

    1. 单个类时候,文件名和类名一致
    2. 驼峰命名风格
  2. 类内布局

  3. 属性声明

  4. 初始化

  5. 次构造函数

  6. 方法声明

  7. 伴生对象

  8. 命名规则

  9. 包名

    1. 小写,不使用下划线
  10. 类名、函数名和对象名

  11. 大写字母开头的驼峰风格

  12. 测试方法

    1. 允许使用下划线
    2. 允许使用反括号带空格的名称 android中不可以,少用
  13. 属性名

  14. val

  15. 大写,下划线分割

  16. 幕后属性(类似与Java的private)

    1. 下划线开头 对外部不可见
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐