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()) }
}
复制代码
成功
相关推荐
urkay-3 小时前
Kotlin Flow分类
android·开发语言·kotlin
alexhilton15 小时前
Kotlin DSL深度解析:从Gradle脚本到构建你自己的DSL
android·kotlin·android jetpack
Kapaseker1 天前
Android 开放这扇门,正在被 Google 从里面反锁
android·kotlin
唐青枫1 天前
别再把 Util 类堆成杂物间:Kotlin Extension 扩展函数与扩展属性实战详解
kotlin
plainGeekDev2 天前
依赖管理 → Version Catalog
android·java·kotlin
黄林晴2 天前
KMP 正式支持 SwiftPM:CocoaPods 迁移配置指南
android·ios·kotlin
花燃柳卧3 天前
跨平台路由组件工程源码补充上传
android·flutter·kotlin
TechNomad3 天前
Kotlin类对象与接口详解
android·kotlin
Ws_3 天前
Kotlin Multiplatform day2
kotlin
TechNomad4 天前
Kotlin_Lambda编程详解
android·kotlin