• Kotlin


    1)数据类型

     2) 变量声明:

    val:对应java - final ,不可变的变量(这不是常量嘛?)

    eg. 表示一个区间 val range = 0..10  或 val range = 0 until 10

    var:可变变量

    3)函数

    格式:fun functionname(param1:Int, param2:Int): Int { return 0 }  参数列表后面的Int是返回值类型,没有可以不写。

    单行代码语法糖:fun methodName(param1: Int, param2: Int) = 0

    4)逻辑控制语句

    a) if:Kotlin中if语句相比Java有一个额外功能:可以有返回值。

    1 fun largerNumber(num1: Int, num2: Int): Int {
    2     return if (num1 > num2) {
    3         num1
    4     } else {
    5         num2
    6     }
    7 }

    语法糖:

    fun largerNumber(num1: Int, num2: Int) = if (num1 > num2) num1 else num2

    b) when

    1 fun getScore(name: String) = when (name) {
    2     "Tom" -> 86
    3     "Jim" -> 77
    4     "Jack" -> 95
    5     "Lily" -> 100
    6     else -> 0
    7 }

    c) for

    1 fun main() {
    2     for (i in 0..10) {  降序:把..换成 downTo  跳过: for (i in 0 until 10 step 2)
    3         println(i)
    4     }
    5 }

    d)class

     1 class Person {  默认不可继承,除非声明 open class   继承需要使用冒号 class Student:Person(){}
     2     var name = ""
     3     var age = 0
     4 
     5     fun eat() {
     6         println(name + " is eating. He is " + age + " years old.")
     7     }
     8 }
     9 
    10 fun main() {   
    11     val p = Person()
    12     p.name = "Jack"
    13     p.age = 19
    14     p.eat()
    15 }

    e) data:自定义数据类,可以使用 equals()、hashCode()、toString()等方法

    data class Cellphone(val brand: String, val price: Double)
    

    f)object:可以用该关键字定义一个单例类

    1 object Singleton {
    2     fun singletonTest() {
    3         println("singletonTest is called.")
    4     }
    5 }
    6 Singleton.singletonTest()

    5)Lambda

     

    6) 函数式API

    Android中有一个极为常用的点击事件接口OnClickListener,假设现在我们拥有一个按钮button的实例

    button.setOnClickListener { v ->}

    7)可空运算符(跟C#一样)

    ? 操作符表示当对象不为空时正常调用相应的方法,当对象为空时则什么都不做。

    eg.  a不为空则返回a 否则返回b 

    val c = a ?: b

  • 相关阅读:
    Ubuntu14.04安装和配置Tomcat8.0.12
    订单、支付、退款、发货、退货等编号自动生成类
    java实现给图片添加水印
    跳一次涨薪88% 跳槽已成为中国“职场文化”
    五色使人目盲
    CSS样式如何解决IE浏览器不同版本的兼容问题
    MySQL日期时间函数大全
    MySQL DATE_ADD() 函数
    input text框和 checkbox 连带被选中的情况
    jquery easyui from 表单返回乱码!
  • 原文地址:https://www.cnblogs.com/tomatokely/p/15977328.html
Copyright © 2020-2023  润新知