如何在 Kotlin 中初始化嵌套数据 class?

How to initialize nested data class in Kotlin?

我在数据中有以下结构 class:

data class A(
    val b: Int,
    val c: C
) {
    data class B(
        val d: Int
    )

    data class C(
        val d: Int
    )  
}

并且此 class 的实例正在传递给具有以下签名的方法:

fun doSomethingMethod(object: A.B?): Mono<Unit> =
            // do something
            }

所以现在我正在尝试初始化数据 class A 的实例,同时只初始化 B,但我不知道该怎么做。到目前为止我已经尝试过:

val testObject = A(A.B(5))

但是它不起作用。有人有想法吗?

要创建嵌套数据对象 class 只需使用以下语法:

val instance = OuterClass.NestedClass([params])

在你的情况下它将是:

val b = A.B(5)

完整示例:

fun doSomethingMethod(b: A.B?): Mono<Unit> {
    // do something
}

val b = A.B(5)
val mono = doSomethingMethod(b)