Kotlin数据类的扩展函数

问题描述 投票:0回答:1

我有一个看起来像这样的数据类

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()

如何编写扩展功能?。任何帮助将不胜感激

android kotlin data-class
1个回答
2
投票

只需在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

© www.soinside.com 2019 - 2024. All rights reserved.