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()) }
}
复制代码
成功
相关推荐
消失的旧时光-19433 小时前
Kotlin 协程最佳实践:用 CoroutineScope + SupervisorJob 替代 Timer,实现优雅周期任务调度
android·开发语言·kotlin
错把套路当深情3 小时前
Kotlin保留小数位的三种方法
开发语言·python·kotlin
错把套路当深情3 小时前
Kotlin基础类型扩展函数使用指南
python·微信·kotlin
Frank_HarmonyOS3 小时前
Kotlin 协程之launch、async、suspend 函数和调度器(Dispatchers)
kotlin
错把套路当深情17 小时前
Kotlin Map扩展函数使用指南
服务器·前端·kotlin
消失的旧时光-194317 小时前
Kotlin 协程实践:深入理解 SupervisorJob、CoroutineScope、Dispatcher 与取消机制
android·开发语言·kotlin
错把套路当深情17 小时前
Kotlin List扩展函数使用指南
开发语言·kotlin·list
佳哥的技术分享18 小时前
kotlin基于MVVM架构构建项目
android·开发语言·kotlin
雨白1 天前
玩转 Flow 操作符(二):时间控制、聚合与组合
android·kotlin
程序员江同学1 天前
Kotlin 技术月报 | 2025 年 10 月
android·kotlin