Kotlin数据类的扩展函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kotlin数据类的扩展函数相关的知识,希望对你有一定的参考价值。
我有一个看起来像这样的数据类
data class SuggestionResponse(
val metadata: Metadata,
val response: Response
)
data class Response(
///blah blah
)
data class Metadata(
val timeleft: String,
val totalTime: String
)
现在我要求将这些数据转换为不同类型的数据对象。我想写一个扩展函数来完成这个任务。让函数名称为hello
我想像这样调用这个扩展函数
suggestionResponse.hello()
如何编写扩展功能?。任何帮助将不胜感激
答案
只需在SuggestionResponse
类上创建一个扩展函数,您就可以访问SuggestionResponse
类的属性:
fun SuggestionResponse.hello() {
//`metadata` property is available here
//`response` property is available here
val time = metadata.timeleft
}
然后你就可以在SuggestionResponse
类的实例上调用它:
suggestionResponse.hello()
More info about extension functions。
以上是关于Kotlin数据类的扩展函数的主要内容,如果未能解决你的问题,请参考以下文章
Kotlin 扩展函数和运算符重载[第一行代码 Kotlin 学习笔记]