如何在 kotlin 上捕获参数的数据类型?

莫奇尼

我有一个以 args 作为参数的通用“getResult”函数,然后程序怎么知道 args 是 Int 类型、String 类型还是不是这两种数据类型?

// Coming Soon
fun main() {
    val stringResult = getResult("Kotlin")
    val intResult = getResult(100)

    // TODO 2
    println()
}

// TODO 1
fun <T> getResult(args: T): Int {
    return 0
}```
莫奇尼
// Coming Soon
fun main() {
    val stringResult = getResult("Kotlin")
    val intResult = getResult(100)
    val bolResult = getResult(true)
    // TODO 2
    println("$stringResult and $intResult now $bolResult")
}

// TODO 1
fun <T> getResult(args: T): Int {
    when(args){
        is String -> {
            return args.length
        }
        is Int ->{
            return args*5
        }
    }
    return 0
}```

That I think my Answer but I should check again with different cases

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 Kotlin/Native 中创建原始数据类型的 CPointer?

如何在 Kotlin 中创建可以容纳任何数据类型(包括空值)的空数组

如何在 kotlin 中旋转捕获的图像

如何在Kotlin中跳过对通用类型参数的说明?

如何在Kotlin中获取泛型类型参数的类

如何在 Kotlin 的函数类型中接收 null 作为参数

如何在Kotlin中省略lambda参数?

Kotlin 如何在参数中模拟函数

如何在Kotlin中使方法参数可变?

如何在 Kotlin 中使用原始类型?

如何在python中设置函数参数的数据类型?

如何在swagger中设置路线参数的数据类型?

如何在Kotlin上绕过NetworkOnMainThreadException

如何在Ubuntu上运行Kotlin?

如何在Kotlin的forEach上引用外部

如何在Kotlin的RecyclerView上实现longClickListen

如何在Kotlin中访问arraylist数据

数据类中的返回类型如何在 Kotlin 中工作?

如何在Angular的数据类型上使用ngSwitch?

如何在Kotlin上测试数据类?

如何在 Android 中从 recyclerView 中捕获照片 - Kotlin 语言

如何在Kotlin中同时捕获许多异常

如何在 C++ 中捕获数据类型溢出异常?

如何在Kotlin中将“自己的类型”指定为返回类型

如何在Kotlin中获取经过修饰的泛型参数的实际类型参数?

如何在Kotlin中使用返回带有类型参数的子类型的方法创建类?

如何提取泛型类型参数的数据类型?

Kotlin:如何获取方法参数的类型

如何在Kotlin中指定递归泛型参数?