gpt4 book ai didi

kotlin - 如何在 Kotlin 中表达联合类型?

转载 作者:行者123 更新时间:2023-12-05 01:23:11 28 4
gpt4 key购买 nike

联合类型,也称为求和类型,是一种强大的语言特性,我发现自己经常在 TypeScript 中使用它

类似的东西:

let a: string | number = “hello”
a = 3

我如何在 kotlin 中实现这种行为?

我看到一些人在谈论使用继承和密封类来实现这一点,但看起来如果你想将这种方法用于基元(例如 String 和 Int),那么就必须围绕这些类型编写包装器来访问潜在值(value)。

我想知道是否有更实用的解决方案。

最佳答案

据我所知,在 kotlin 中并没有真正“漂亮”的方法实现可以保存字符串和整数的变量的一种方法可能如下所示:

var x: Any = 5
x = "hello"

但正如您所注意到的,X 不仅可以容纳任何类型的字符串和整数,而且您可以使用 Arrow 库(如果我没记错的话)中的“Either”类,它允许这样的行为:

var x = Either<Int, String>(5)

不管怎样,我不太确定你为什么需要这样一个变量

关于kotlin - 如何在 Kotlin 中表达联合类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72755843/

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