Kotlin 类型别名

文章目录

定义

有时候一个类型可能会特别长,特别是在引入泛型之后。我们可以使用typealias为某一类型起一个名字:

kt 复制代码
typealias Cookies = HashMap<String, List<String>>


fun main() {
    val cookies: Cookies = HashMap()
    
    cookies["sessionId"] = listOf("abc123")
}

为嵌套类起别名:

kt 复制代码
typealias MyClassInner = MyClass.Inner1.Inner2


class MyClass {
    class Inner1 {
        class Inner2
    }
}

为函数起别名:

kt 复制代码
typealias Callback = (String) -> Unit

泛型别名

当类型中带有泛型时,也可以连带泛型:

kt 复制代码
typealias Callback<T> = (Result<T>) -> Unit


fun request(callback: Callback<String>) =
    callback(Result.success("成功"))


fun main() {
    request { print(it.getOrNull()) }
}
复制代码
成功
相关推荐
zFox1 小时前
五、开始项目实战(搭建完整项目)
ui·kotlin
zh_xuan5 小时前
kotlin对象表达式
开发语言·kotlin
我命由我123457 小时前
Kotlin 开发 - Kotlin Lambda 表达式返回值
android·java·开发语言·java-ee·kotlin·android studio·android-studio
故事不长丨7 小时前
Java vs Kotlin 深度对决:特性、性能、场景全解析
android·java·开发语言·kotlin·安卓
zh_xuan8 小时前
kotlin伴生对象
开发语言·kotlin
冬奇Lab10 小时前
【Kotlin系列05】集合框架:从Java的冗长到函数式编程的优雅
android·kotlin·编程语言
恋猫de小郭11 小时前
Compose Multiplatform 1.10 Interop views 新特性:Overlay 和 Autosizing
android·flutter·macos·kotlin·github·objective-c·cocoa
Kapaseker12 小时前
必须要搞懂的 View 核心问题
android·kotlin
zh_xuan1 天前
kotlin 类继承的语法2
开发语言·kotlin