1
在下面我可以克隆Hashtable的,但不是实际值为什么我的克隆在Scala中失败?
val myHash = new HashMap[String, Int]
myHash.put("A", 4)
println(myHash("A").clone()) // fail
myHash.clone() // works
我得到错误无法解析符号克隆
在下面我可以克隆Hashtable的,但不是实际值为什么我的克隆在Scala中失败?
val myHash = new HashMap[String, Int]
myHash.put("A", 4)
println(myHash("A").clone()) // fail
myHash.clone() // works
我得到错误无法解析符号克隆
HashMap是Clonable而Int不是。
我假设你期望得到一个错误,因为int在地图中;然而这不是问题,因为克隆很浅。克隆只会创建一张新地图,并将所有相同的键和值填入该地图。
您无法克隆一个数字。 Int
没有clone()
方法。
可以克隆BigInt和BigDecimal。最好说一个不能克隆'AnyVal',这相当于Java基元,因为'clone'方法只存在于'AnyRef'上。 –