gpt4 book ai didi

kotlin - Kotlin如何知道如何执行plus运算符

转载 作者:行者123 更新时间:2023-12-02 12:41:28 27 4
gpt4 key购买 nike

在Kotlin中,您可以使用加号来组合多个上下文:

val exceptionHandler = CoroutineExceptionHandler { context, exception ->
println(exception.message)
}

val threadPool = Dispatchers.IO
val job = Job()

GlobalScope.launch(exceptionHandler + threadPool + job) {
throw Exception("Bad robot")
}

我习惯于看到用于加数字或将字符串连接在一起的加号。但显然,它也可以用于其他用途。 Kotlin如何知道如何使用加号对任意对象执行操作?

如果我看一下Collections的文档,它显示了一个示例,其中+或-符号可用于合并或删除集合中的项目:

https://kotlinlang.org/docs/reference/collection-plus-minus.html

这意味着Kotlin必须以某种方式必须知道如何执行向集合中添加或删除项目的操作。我假设如果我想为+或-创建自己的重载,则必须以某种方式对其进行定义。

最佳答案

+只是一个运算符,它调用类的特殊方法:https://kotlinlang.org/docs/reference/operator-overloading.html
对于不同的类,此方法执行不同的操作,例如加数字,连接字符串等。

您可以将自己的运算符实现应用于自定义类。

关于kotlin - Kotlin如何知道如何执行plus运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57685635/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com