gpt4 book ai didi

Scala Cast 对象到另一种类型

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

我想让下面的代码不抛出任何错误

case class A(value: String)
val a = A("I hope to be string one day")
val value = a.asInstanceOf[String] // java.lang.ClassCastException: A cannot be cast to java.lang.String

我想修改类 A 以便下面的工作

val value = a.asInstanceOf[String] // I hope to be string one day

有人知道解决办法吗?

最佳答案

A 无法转换为 String,因为它不是 String。您无法执行任何操作来使 a.asInstanceOf[String] 正常工作。

也就是说,您可以显式或隐式地将A转换String:

// explicit
val s: String = a.value

// implicit conversion (although typically frowned-upon as bad practice)
implicit def unwrapA(a: A): String = a.value
val s: String = a

关于Scala Cast 对象到另一种类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40438839/

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