Kotlin 类型别名
文章目录
- 定义
- 泛型别名
定义
有时候一个类型可能会特别长,特别是在引入泛型之后。我们可以使用typealias
为某一类型起一个名字:
typealias Cookies = HashMap<String, List<String>>fun main() {val cookies: Cookies = HashMap()cookies["sessionId"] = listOf("abc123")
}
为嵌套类起别名:
typealias MyClassInner = MyClass.Inner1.Inner2class MyClass {class Inner1 {class Inner2}
}
为函数起别名:
typealias Callback = (String) -> Unit
泛型别名
当类型中带有泛型时,也可以连带泛型:
typealias Callback<T> = (Result<T>) -> Unitfun request(callback: Callback<String>) =callback(Result.success("成功"))fun main() {request { print(it.getOrNull()) }
}
成功