gpt4 book ai didi

Scala 类型参数和事例类

转载 作者:行者123 更新时间:2023-12-03 03:50:42 24 4
gpt4 key购买 nike

我有一个这样的函数:

private def fixBrand[T]( item:T ) = item.copy(brand = item.brand.toLowerCase)

这不是编译——提示 T 没有函数副本。现在我知道我要传递的每个项目都是一个案例类。我如何告诉编译器?每个案例类也有一个“品牌”字段,但在对象层次结构方面是不相关的。

我以为我读到 Scala 2.10 有一个功能,允许我将 T 用作具有函数 x、y、... 的“事物”?不过忘了那个功能叫什么了!

最佳答案

您可以使用结构类型:

def fixBrand[T <: { def copy(t: String): T; def brand: String }](item: T) = item.copy(item.brand.toLowerCase)

关于Scala 类型参数和事例类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18806473/

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