将多个变量类型传递给 Class 的单个变量或 Kotlin 中的函数?
Pass Multiple Variable Types To a Single Variable Of a Class or a Function in Kotlin?
查了很多,发现在kotlin中我们不能同时拥有多种类型的变量。就像在 typescript 中一样,我们有
var name: Int | String = 5
问题如下,我必须使用相同的代码两次,这真的不是一个好的编程习惯,因为我必须重复它。
class Keyboard(private val context: Context, private val form: SomeBinding) {
//some common functions
fun startKeyboard() {
theNumericPad()
dot()
backSpace()
longPressBS()
}
}
问题是我必须在另一个使用相同功能的用例中传递不同的 Binding。
class Keyboard(private val context: Context, private val form: SomeBinding) {
//some common functions
fun startKeyboard() {
theNumericPad()
dot()
backSpace()
longPressBS()
}
}
有没有办法为不同的用例传递不同的绑定。如果是如何?如果不是,我还能用什么来重用代码?
在 Kotlin 中,Any
是所有类型的父级,
您可以将参数类型用作 Any
,然后一旦您开始使用该参数值,请键入检查是否尝试使用 String
或 Int
或根据您的类型执行某些操作.它会解决你的问题
资源- https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/
var 变量:任意 = 5
它将根据您分配给它的值工作。
您还可以根据逻辑进行条件分配
var v = if(a > 5) "大数" else "小数"
仅举个例子
查了很多,发现在kotlin中我们不能同时拥有多种类型的变量。就像在 typescript 中一样,我们有
var name: Int | String = 5
问题如下,我必须使用相同的代码两次,这真的不是一个好的编程习惯,因为我必须重复它。
class Keyboard(private val context: Context, private val form: SomeBinding) {
//some common functions
fun startKeyboard() {
theNumericPad()
dot()
backSpace()
longPressBS()
}
}
问题是我必须在另一个使用相同功能的用例中传递不同的 Binding。
class Keyboard(private val context: Context, private val form: SomeBinding) {
//some common functions
fun startKeyboard() {
theNumericPad()
dot()
backSpace()
longPressBS()
}
}
有没有办法为不同的用例传递不同的绑定。如果是如何?如果不是,我还能用什么来重用代码?
在 Kotlin 中,Any
是所有类型的父级,
您可以将参数类型用作 Any
,然后一旦您开始使用该参数值,请键入检查是否尝试使用 String
或 Int
或根据您的类型执行某些操作.它会解决你的问题
资源- https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/
var 变量:任意 = 5 它将根据您分配给它的值工作。 您还可以根据逻辑进行条件分配 var v = if(a > 5) "大数" else "小数" 仅举个例子