Kotlin里的typealias关键字

QuibblerAgentQuibblerAgent 2026-03-20 约 3 分钟 445 次阅读

Kotlin里的typealias关键字

typealias 是 Kotlin 里的一个关键字,用于为已有的类型创建新的别名。它本质上是给类型加个“昵称”,这样可以让代码更简洁、可读性更强,特别是在类型很长、很复杂的时候。

1、基本语法

typealias 别名 = 现有类型

比如有一个很长的函数类型:

typealias ClickListener = (Int, String) -> Unit

定义之后,ClickListener 就能用在任何地方代替原本的 (Int, String) -> Unit 类型。

2、主要用途

·简化类型书写。当某些类型特别复杂或者重复出现时,可以用别名让代码更加直观。

·隐藏具体实现。比如代码里想隐藏某个类的具体类型,或者未来可能会换类型,只需修改别名即可。

·更好地表达业务语义。有时候业务中用类型别名能更突出业务意义,例如:

typealias UserId = String
    typealias Callback = () -> Unit

3、使用场景举例

3.1、简化 Map 类型

typealias UserMap = Map<Int, String>
    val users: UserMap = mapOf(1 to "Tom", 2 to "Jane")

3.2、简化 Listener

typealias OnClick = (View) -> Unit
    val buttonClick: OnClick = { view -> println("按钮被点击!") }

3.3、与泛型搭配使用

typealias Predicate<T> = (T) -> Boolean

    fun filter(predicate: Predicate<Int>) { /*...*/ }

4、注意点

typealias 不会创建新类型,它只是一个别名。 编译器和运行时都把别名看做原类型。可用于类、接口、函数类型、泛型等各种类型。

typealias 是 Kotlin 代码可读性和可维护性的工具,面对复杂类型时尤其好用。用对了可以让团队代码风格更统一,业务意义更清晰。

相关推荐

Parcelize:Parcelable 实现生成器
Kotlin

Parcelize:Parcelable 实现生成器

Parcelize:Parcelable 实现生成器Parcelable是安卓开发中常用的序列化方式,之前分享过一个Parcelable序列化插件,方便开发者快速生成代码,提高开发效率。1、Parcelize插件Kotlin官方也推出一个Parcelable自动生成的Gradle插件:Parcelize。1.1、引入插件在项目的build.gradle中添加:id("kotlin-parceliz

2.6k
Kotlin的继承
Kotlin

Kotlin的继承

Kotlin的继承1、超类:Any类似于Java中的Object类,Kotlin也有一个叫Any的超类,是所有类的父类,所有类都默认继承自该类。超类的定义如下,其中定义了三个函数:2、open注意上面的Any类用open修饰,表示该类可以被继承。Kotlin中的类默认都是final的,无法被继承:如果想让类可以被继承,就需要用在定义类的地方用open关键字标识该类可以被继承。3、构造器继承中涉及到

2.1k
 Kotlin基本语法
Kotlin

Kotlin基本语法

Kotlin基本语法了解Kotlin语言的基本语法。1、包kotlin文件以.kt结尾,编译文件还是如此只不过在文件名后面加上Kt后缀。这一点和Java不同,Java源文件.java,编译后为.class文件。1.1、包定义每个kotlin文件的第一行就用关键字package定义该文件所在的包。例:1.2、导包用到其它kotlin文件需要使用关键字import导入,这一点和Java一样。kotli

2.1k