gpt4 book ai didi

斯卡拉 : Match type argument for an object

转载 作者:行者123 更新时间:2023-12-05 01:24:31 27 4
gpt4 key购买 nike

如果我有一个接受类型参数的类,例如 Seq[T] ,并且我有很多此类的对象。我想根据类型参数 T

拆分它们

例如:

val x = List(Seq[Int](1,2,3,4,5,6,7,8,9,0),Seq[String]("a","b","c"))
x.foreach { a =>
a match{
case _ : Seq[String] => print("String")
case _ : Seq[Int] => print("Int")
}
}

这段代码的结果是StringString。它只匹配类 Seq 而不是类型,我应该怎么做才能强制它匹配类型?

最佳答案

您看到的情况是由于类型删除 (http://docs.oracle.com/javase/tutorial/java/generics/erasure.html) 而发生的,某些 IDE 会针对此类错误向您发出警告。

您可以查看 list ,例如查看 What is a Manifest in Scala and when do you need it?

编辑:就像 Patryk 所说,TypeTag 取代了 Scala 2.10 中的 Manifest,参见 Scala: What is a TypeTag and how do I use it?

关于斯卡拉 : Match type argument for an object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20125975/

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