私は可変個の引数を取る関数を持っています。最初は文字列、残りは数値(IntまたはDouble)ですので、引数を取得するためにAny *を使用しています。数字をDoublesとして一様に扱いたいのですが、asInstanceOf [Double]を数値引数に使うことはできません。たとえば:asInstanceOfを使用してAnyをDoubleに変換する
val arr = Array("varargs list of numbers", 3, 4.2, 5)
val d = arr(1).asInstanceOf[Double]
が得られます。これを行う方法は
java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Double
ありますか? (関数はすべての数値を加算する必要があります)。
この問題を見てみましょう:https://issues.scala-lang.org/browse/SI1448私たちはまだそれを修正する方向を確信しています。 – gzm0