Kotlin 极简小抄 P3(函数、函数赋值给变量)

一、Kotlin

  1. Kotlin 由 JetBrains 开发,是一种在 JVM(Java 虚拟机)上运行的静态类型编程语言

  2. Kotlin 旨在提高开发者的编码效率和安全性,同时保持与 Java 的高度互操作性

  3. Kotlin 是 Android 应用开发的首选语言,也可以与 Java 一样用于服务器端开发


二、Kotlin 极简小抄

1、函数
  1. 无参无返回值函数
kotlin 复制代码
fun test1() {
    println("hello test1")
}

fun test2(): Unit {
    println("hello test2")
}
  1. 有参无返回值函数
kotlin 复制代码
fun showSum(a: Int, b: Int) {
    println(a + b)
}
  1. 无参有返回值函数
kotlin 复制代码
fun getNum(): Int {
    return 10
}
  1. 有参有返回值函数
kotlin 复制代码
fun getSum(a: Int, b: Int): Int {
    return a + b
}
2、嵌套函数
kotlin 复制代码
fun outer() {

    println("outer")

    fun inner() {
        println("inner")
    }

    inner()
}
3、函数赋值给变量
  1. 通过函数引用赋值给变量
kotlin 复制代码
fun sum(a: Int, b: Int): Int {
    return a + b
}

var handle1: (Int, Int) -> Int = ::sum
println(handle1(1, 2))

// 自动推断类型
var handle2 = ::sum
println(handle2(3, 4))
  1. 通过匿名函数赋值给变量
kotlin 复制代码
val handle1: (Int, Int) -> Int = fun(a: Int, b: Int): Int {
    return a + b
}
println(handle1(1, 2))

val handle2: (Int, Int) -> Int = fun(a: Int, b: Int): Int = a + b
println(handle2(3, 4))

// 自动推断类型
val handle3 = fun(a: Int, b: Int): Int = a + b
println(handle3(5, 6))
  1. 通过 Lambda 表达式赋值给变量
kotlin 复制代码
val handle1: (Int, Int) -> Int = { x, y -> x * y }
println(handle1(1, 2))

// 自动推断类型
val handle2 = { x: Int, y: Int -> x * y }
println(handle2(3, 4))
4、内联函数
kotlin 复制代码
inline fun sum(a: Int, b: Int): Int {
    return a + b
}

fun main() {

    // 在编译时,Kotlin 编译器会尝试将 sum 函数的调用直接替换为函数体内的代码,即 a + b
    // 内联函数主要用于性能优化
    val result = sum(1, 2)
    println(result)
}
相关推荐
程序员iteng3 分钟前
Java是怎么处理死锁的
java·开发语言
月临水5 分钟前
JavaEE: 深入探索TCP网络编程的奇妙世界(二)
网络·tcp/ip·java-ee
yunson_Liu33 分钟前
编写Python脚本在证书过期10天内将域名信息发送到钉钉
开发语言·python·钉钉
wk灬丨42 分钟前
Android Choreographer 监控应用 FPS
android·kotlin
脚步的影子1 小时前
R语言的基础知识R语言函数总结
开发语言·r语言
Evand J1 小时前
卡尔曼滤波中Q和R与噪声的关系
开发语言·r语言
脚步的影子1 小时前
.net core8 使用JWT鉴权(附当前源码)
java·开发语言·.netcore
游向大厂的咸鱼1 小时前
【Java EE】线程安全问题的原因与解决方案
java·安全·java-ee
void10241 小时前
python画图1
开发语言·python
大胃粥1 小时前
Android U WMS : Activity 冷启动(2) 添加启动窗口
android