【问题标题】:class Double is abstract; cannot be instantiated in scalaDouble 类是抽象的;不能在 scala 中实例化
【发布时间】:2018-07-23 10:46:35
【问题描述】:
object demo 
{
  def main(args:Array[String]):Unit=
  {
      val temp: LinkedHashMap[String,Object]=new 
      LinkedHashMap[String,Object]()
      temp.put("apple", new Double(1));
      // here i received error since double is abstract class and cannot instantitaed
   }
}

我收到的错误是由于抽象类实例我想实例化一个整数如何实现这一点

【问题讨论】:

  • 如果你想传递 Java 的 Double 类,你应该把它改成这样:new Double(1)new java.lang.Double(1)

标签: scala linkedhashmap


【解决方案1】:

如果您想要scala.Double,请继续阅读。如果您想要 java Double,请参阅 Duelist 的评论

要创建Double,可以添加小数点,如

1.0

编译器会在哪里推断它是Double。或者,如果你有一个值val a: Int = 1,你可以提供一个显式类型为

a: Double

或转换

a.toDouble

但是,如果您想要一个整数实例(如您所说),则只需使用1。编译器会推断它是Int

【讨论】:

    猜你喜欢
    • 2013-08-23
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    • 1970-01-01
    • 2013-03-07
    相关资源
    最近更新 更多